From 8a01402c9bbad4f8f46c055be0517d7ea7d562a3 Mon Sep 17 00:00:00 2001 From: Jesus Lanchas Date: Fri, 1 Dec 2023 01:33:16 +0100 Subject: [PATCH 1/3] chore: add ethereum network and new format for .env file --- .env.example | 21 ++++++++++++++++----- hardhat.config.ts | 47 ++++++++++++++++++++++++++++++++++++----------- 2 files changed, 52 insertions(+), 16 deletions(-) diff --git a/.env.example b/.env.example index b5b046bb..9d2b72b2 100644 --- a/.env.example +++ b/.env.example @@ -1,6 +1,17 @@ +# true or false +FORK=false +FORKED_NETWORK=bscmainnet + MNEMONIC="here is where your twelve words mnemonic should be put my friend" -BSCSCAN_API_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" -BSC_ARCHIVE_NODE="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz" -DEPLOYER_PRIVATE_KEY="E9873D79C6D87DC0FB6A5778633389F4453213303DA61F20BD67FC233AA33262" -BSC_TESTNET_NODE="https://data-seed-prebsc-1-s1.binance.org:8545" -BSC_MAINNET_NODE="https://bsc-dataseed.binance.org/" \ No newline at end of file +DEPLOYER_PRIVATE_KEY= + +## Archive nodes +#ARCHIVE_NODE_bsctestnet=https://bsc-testnet.nodereal.io/v1/ +#ARCHIVE_NODE_bscmainnet=https://bsc-mainnet.nodereal.io/v1/ +#ARCHIVE_NODE_bscmainnet=http://127.0.0.1:1248 +#ARCHIVE_NODE_sepolia=https://ethereum-sepolia.blockpi.network/v1/rpc/public +#ARCHIVE_NODE_ethereum=https://eth-mainnet.nodereal.io/v1/ +#ARCHIVE_NODE_ethereum=http://127.0.0.1:1248 + +ETHERSCAN_API_KEY= +REPORT_GAS= \ No newline at end of file diff --git a/hardhat.config.ts b/hardhat.config.ts index 30b3286b..7d9e1b70 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -23,12 +23,14 @@ task("accounts", "Prints the list of accounts", async (taskArgs, hre) => { }); function isFork() { - return process.env.FORK_MAINNET === "true" + return process.env.FORK === "true" ? { allowUnlimitedContractSize: false, loggingEnabled: false, forking: { - url: `${process.env.BSC_ARCHIVE_NODE}`, + url: + process.env[`ARCHIVE_NODE_${process.env.FORKED_NETWORK}`] || + "https://data-seed-prebsc-1-s1.binance.org:8545", blockNumber: 21068448, }, accounts: { @@ -80,32 +82,39 @@ const config: HardhatUserConfig = { networks: { hardhat: isFork(), bsctestnet: { - url: process.env.BSC_TESTNET_NODE || "https://data-seed-prebsc-2-s3.binance.org:8545/", + url: process.env.ARCHIVE_NODE_bsctestnet || "https://data-seed-prebsc-1-s1.binance.org:8545", chainId: 97, accounts: { mnemonic: process.env.MNEMONIC || "", }, + gasPrice: 10000000000, // 10 gwei gasMultiplier: 10, timeout: 12000000, }, bscmainnet: { - url: process.env.BSC_MAINNET_NODE || "https://bsc-dataseed.binance.org/", - gasMultiplier: 10, - accounts: { - mnemonic: process.env.MNEMONIC || "", - }, + url: process.env.ARCHIVE_NODE_bscmainnet || "https://bsc-dataseed.binance.org/", + accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], }, sepolia: { - url: "https://rpc.notadegen.com/eth/sepolia", + url: process.env.ARCHIVE_NODE_sepolia || "https://ethereum-sepolia.blockpi.network/v1/rpc/public", chainId: 11155111, - gasPrice: 20000000000, - accounts: process.env.PRIVATE_KEY ? [`0x${process.env.PRIVATE_KEY}`] : [], + live: true, + gasPrice: 20000000000, // 20 gwei + accounts: process.env.DEPLOYER_PRIVATE_KEY ? [`0x${DEPLOYER_PRIVATE_KEY}`] : [], + }, + ethereum: { + url: process.env.ARCHIVE_NODE_ethereum || "https://ethereum.blockpi.network/v1/rpc/public", + chainId: 1, + live: true, + timeout: 1200000, // 20 minutes }, }, etherscan: { apiKey: { bscmainnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", bsctestnet: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", + sepolia: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", + ethereum: process.env.ETHERSCAN_API_KEY || "ETHERSCAN_API_KEY", }, customChains: [ { @@ -124,6 +133,22 @@ const config: HardhatUserConfig = { browserURL: "https://testnet.bscscan.com", }, }, + { + network: "sepolia", + chainId: 11155111, + urls: { + apiURL: "https://api-sepolia.etherscan.io/api", + browserURL: "https://sepolia.etherscan.io", + }, + }, + { + network: "ethereum", + chainId: 1, + urls: { + apiURL: "https://api.etherscan.io/api", + browserURL: "https://etherscan.io", + }, + }, ], }, paths: { From 063d8d2dd5405330f30b523bd56829be074fef9e Mon Sep 17 00:00:00 2001 From: Jesus Lanchas Date: Fri, 1 Dec 2023 01:33:47 +0100 Subject: [PATCH 2/3] feat: generate file only with addresses of deployed contracts --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e3b001df..66c471ad 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -94,11 +94,11 @@ jobs: - name: Export deployments run: | - yarn hardhat export --network bsctestnet --export ./deployments/bsctestnet.json - yarn hardhat export --network bscmainnet --export ./deployments/bscmainnet.json - yarn hardhat export --network sepolia --export ./deployments/sepolia.json + for NETWORK in bsctestnet bscmainnet ethereum sepolia; do + yarn hardhat export --network ${NETWORK} --export ./deployments/${NETWORK}.json + jq -M '{name, chainId, addresses: .contracts | map_values(.address)}' ./deployments/${NETWORK}.json > ./deployments/${NETWORK}_addresses.json + done yarn prettier - - uses: stefanzweifel/git-auto-commit-action@v5 with: commit_message: "feat: updating deployment files" From c2a2296d8e81299c5ffad64b3060f6a7a809b8b8 Mon Sep 17 00:00:00 2001 From: chechu Date: Fri, 1 Dec 2023 00:35:26 +0000 Subject: [PATCH 3/3] feat: updating deployment files --- deployments/bscmainnet_addresses.json | 10 ++++++++++ deployments/bsctestnet_addresses.json | 10 ++++++++++ deployments/ethereum.json | 5 +++++ deployments/ethereum_addresses.json | 5 +++++ deployments/sepolia_addresses.json | 5 +++++ 5 files changed, 35 insertions(+) create mode 100644 deployments/bscmainnet_addresses.json create mode 100644 deployments/bsctestnet_addresses.json create mode 100644 deployments/ethereum.json create mode 100644 deployments/ethereum_addresses.json create mode 100644 deployments/sepolia_addresses.json diff --git a/deployments/bscmainnet_addresses.json b/deployments/bscmainnet_addresses.json new file mode 100644 index 00000000..64f48004 --- /dev/null +++ b/deployments/bscmainnet_addresses.json @@ -0,0 +1,10 @@ +{ + "name": "bscmainnet", + "chainId": "56", + "addresses": { + "DefaultProxyAdmin": "0x6beb6D2695B67FEb73ad4f172E8E2975497187e4", + "ProtocolShareReserve": "0xCa01D5A9A248a830E9D93231e791B1afFed7c446", + "ProtocolShareReserve_Implementation": "0x5108E5F903Ecc5e3a2dA20171527aCe96CB3c7f8", + "ProtocolShareReserve_Proxy": "0xCa01D5A9A248a830E9D93231e791B1afFed7c446" + } +} diff --git a/deployments/bsctestnet_addresses.json b/deployments/bsctestnet_addresses.json new file mode 100644 index 00000000..697730f2 --- /dev/null +++ b/deployments/bsctestnet_addresses.json @@ -0,0 +1,10 @@ +{ + "name": "bsctestnet", + "chainId": "97", + "addresses": { + "DefaultProxyAdmin": "0x7877ffd62649b6a1557b55d4c20fcbab17344c91", + "ProtocolShareReserve": "0x25c7c7D6Bf710949fD7f03364E9BA19a1b3c10E3", + "ProtocolShareReserve_Implementation": "0x6A7FF4641F52b267102a5a0779cE7a060374d6cC", + "ProtocolShareReserve_Proxy": "0x25c7c7D6Bf710949fD7f03364E9BA19a1b3c10E3" + } +} diff --git a/deployments/ethereum.json b/deployments/ethereum.json new file mode 100644 index 00000000..dd24474d --- /dev/null +++ b/deployments/ethereum.json @@ -0,0 +1,5 @@ +{ + "name": "ethereum", + "chainId": "1", + "contracts": {} +} diff --git a/deployments/ethereum_addresses.json b/deployments/ethereum_addresses.json new file mode 100644 index 00000000..de562ee9 --- /dev/null +++ b/deployments/ethereum_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "ethereum", + "chainId": "1", + "addresses": {} +} diff --git a/deployments/sepolia_addresses.json b/deployments/sepolia_addresses.json new file mode 100644 index 00000000..96d56ddd --- /dev/null +++ b/deployments/sepolia_addresses.json @@ -0,0 +1,5 @@ +{ + "name": "sepolia", + "chainId": "11155111", + "addresses": {} +}