मुख्य सामग्री पर जाएं
Virtual Environments पर नवीनतम code को deploy करें और RPC लिंक और contract addresses साझा करके इसे अपनी team के लिए उपलब्ध कराएं।
Continuous integration (CI) and continous deployment (CD) with Virtual Environments

Code Sample: Staging Contracts to Virtual Environment

REST API: Create and manage Virtual Environments

1
Virtual Environment बनाएं
2
अपने contracts को stage करने के लिए एक नया Virtual Environment बनाएं, इनमें से किसी एक तरीके से:
3
  • Virtual Environments dashboard का उपयोग करके
  • REST API का उपयोग करके
  • 4
    Environment variables सेट करें
    5
    Virtual Environment बनाने और फिर contracts deploy और verify करने के लिए, निम्न environment variables सेट करें:
    6
  • TENDERLY_ACCOUNT_ID आपके account ID के साथ
  • TENDERLY_PROJECT आपके project (slug) के साथ
  • TENDERLY_ACCESS_KEY उत्पन्न की गई access key के साथ
  • ORIGINAL_NETWORK_ID उस network के ID के साथ जिस पर आप Virtual Environment आधारित करना चाहते हैं
  • FOUNDRY_REPO Foundry repo के पथ के साथ
  • DEPLOYER_ADDRESS उस account के साथ जिससे आप deploy कर रहे हैं
  • deployment scripts के लिए आवश्यक अन्य environment variables जोड़ें
  • 7
    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=...
    
    8
    अपनी deployment commands लिखें
    9
    deploy-command.sh को संपादित करें और अपने contracts को deploy करने के लिए commands जोड़ें। ध्यान दें कि आपको अपने Foundry या Hardhat प्रोजेक्ट में verification जोड़नी होगी; देखें Deploy and verify contracts
    10
    उदाहरण के लिए:
    11
    #!/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
    
    12
    Contracts को stage करें
    13
    निम्न commands चलाएं जो:
    14
  • एक नया Virtual Environment बनाएंगे
  • Infinite faucet का उपयोग करके $DEPLOYER_ADDRESS को test ETH से fund करेंगे
  • आपके custom chain पर verification के लिए Foundry के foundry.toml को कॉन्फ़िगर करेंगे
  • आपके contracts deploy करेंगे
  • और अंत में foundry.toml को साफ़ करेंगे
  • 15
    # 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
    
    16
    RPC लिंक output में दिखाया गया है, और आपके contracts Virtual Environment पर deploy और verify हो गए हैं।
    17
    Addresses साझा करें
    18
    deployed contracts के ABIs और addresses को इकट्ठा करें और उन्हें Virtual Environment RPC के साथ अपनी team में वितरित करें।