wormhole/ethereum/truffle-config.js

389 lines
10 KiB
JavaScript
Raw Normal View History

2022-01-13 13:44:32 -08:00
require("dotenv").config({ path: ".env" });
const HDWalletProvider = require("@truffle/hdwallet-provider");
const KLAYHDWalletProvider = require("truffle-hdwallet-provider-klaytn");
2020-08-06 14:32:31 -07:00
module.exports = {
Relayer: Ethereum folder Changes for Merging into Main (#3038) * gRelayer: surrounding files * modification to get compilation * restore devnet * remove generic relayer docker * remove wait for relayer engine * keep build time 20 * sh -> bash * sh -> bash * Remove comment * bash -> sh * Revert "bash -> sh" This reverts commit 5c37e92fa19bbdbefc79c8ee0dbceeb127c53373. * bash->sh * gRelayer: ethereum folder changes for generic-relayer-merge * add eth-devnet * Adds .github because workflow needs to install forge * sdk-ci-tests need to install forge * don't wait for nonexistent relayer engine * update package.json and package-lock.json * Remove unnecessary types from package.json * ts-node * gRelayer: ethereum folder changes for generic-relayer-merge * sdk-ci-tests need to install forge * don't wait for nonexistent relayer engine * update package.json and package-lock.json * remove these changes * Relayer: Natspec documentation in IWormholeRelayer (#3032) * WIP * Fixes * Updated interfaces * remove bash * Forward uses same refund chain id and refund address (#3034) * WIP * Fixes * Forward uses same refund chain id and refund address * Updated interfaces * Remove forge build warnings * Add note to interface for resend * via-ir on unless in Tilt * Correct IWormholeReceiver interface * Wormhole message fee now part of quoteDeliveryPrice (#3043) * Fix to PR 3043 * Remove compiler warning * Relayer/address drew review (#3060) * Fix typo in Create2Factory * Add event for contract upgrades * Prevent registering contract if it is already registered * Prevent allowing unset chainId for default delivery provider governance VAA * memory to calldata for external functions in WormholeRelayerSend * continue memory to calldata for external functions * Fix pricing in delivery provider * Sanity check new default delivery provider isn't 0 address * Don't save vaaKey as local variable * cache the length of array rather than iterate every time for vaaKeys * Replacing memory with calldata in few locations * Remove stale file DeliveryProviderMessages * Remove batch VAA sender script * Remove batch VAA from WormholeSimulator * Wait for a confirmation in deploy scripts * remove unnecessary comments * Fix Delivery Provider Pricing and add a test * remove console logs * Revert "continue memory to calldata for external functions" This reverts commit f322afb6c0bbd09e3d04ab42a90e592ff752f6bf. * Revert "memory to calldata for external functions in WormholeRelayerSend" This reverts commit 42fcaad8842d0c81506c9586d8d0fd98f6bb6ae1. * Revert "Don't save vaaKey as local variable" This reverts commit a9172379c564fd430a083645c1c42c78e014d68d. * Revert "cache the length of array rather than iterate every time for vaaKeys" This reverts commit d61380a9b0c0671e67e3bd5d874ae339e180dd34. * Revert "Replacing memory with calldata in few locations" This reverts commit 94e47b6e72eaaa52ac0ba2980c439180401fafd7. * Revert "Fix typo in Create2Factory" This reverts commit a9f7bdf461945c8abf020007d16bbc6b4301d051. * Update contract addresses for via-ir * Slight improvements to delivery provider implementation * typed errors for delivery provider * enable VIA-IR in CI and not in Tilt * correct contract address for via ir * WormholeRelayerSend and WormholeRelayerDelivery (#3082)
2023-06-13 14:01:43 -07:00
contracts_directory: "contracts/{*.sol,bridge/{*.sol,interfaces/*.sol,token/*.sol,mock/*.sol,utils/*.sol},interfaces/IWormhole.sol,mock/*.sol,nft/{*.sol,interfaces/*.sol,token/*.sol,mock/*.sol}}",
2022-01-13 13:44:32 -08:00
networks: {
development: {
host: "127.0.0.1",
port: 8545,
network_id: "*",
},
// test network is the same as development but allows us to omit certain migrations
test: {
host: "127.0.0.1",
port: 8545,
network_id: "*",
},
ethereum: {
2022-01-13 13:44:32 -08:00
provider: () =>
new HDWalletProvider(process.env.MNEMONIC, "https://rpc.ankr.com/eth"),
2022-01-13 13:44:32 -08:00
network_id: 1,
confirmations: 1,
timeoutBlocks: 200,
skipDryRun: false,
},
2022-01-13 13:44:32 -08:00
rinkeby: {
provider: () =>
new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ankr.com/eth_rinkeby"
2022-01-13 13:44:32 -08:00
),
network_id: 4,
gas: 5500000,
confirmations: 2,
timeoutBlocks: 200,
skipDryRun: true,
},
ethereum_testnet: {
2022-01-13 13:44:32 -08:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ankr.com/eth_goerli"
2022-01-13 13:44:32 -08:00
);
},
network_id: "5",
},
bsc: {
2022-01-13 13:44:32 -08:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://bsc-dataseed.binance.org/"
);
},
network_id: "56",
gas: 70000000,
gasPrice: 8000000000,
},
bsc_testnet: {
provider: () =>
new HDWalletProvider(
process.env.MNEMONIC,
"https://data-seed-prebsc-1-s1.binance.org:8545/"
),
2022-01-26 08:15:10 -08:00
network_id: "97",
},
polygon: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://polygon-rpc.com"
);
},
network_id: "137",
gas: 10000000,
gasPrice: 700000000000,
},
polygon_testnet: {
2022-01-26 08:15:10 -08:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ankr.com/polygon_mumbai"
);
2022-01-26 08:15:10 -08:00
},
network_id: "80001",
},
avalanche: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://api.avax.network/ext/bc/C/rpc"
);
},
network_id: "43114",
gas: 8000000,
gasPrice: 26000000000,
},
avalanche_testnet: {
provider: () =>
new HDWalletProvider(
process.env.MNEMONIC,
"https://api.avax-test.network/ext/bc/C/rpc"
),
2022-01-26 08:15:10 -08:00
network_id: "43113",
},
2022-01-13 13:44:32 -08:00
oasis: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://emerald.oasis.dev/"
);
},
network_id: 42262,
},
2022-06-22 09:12:13 -07:00
oasis_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://testnet.emerald.oasis.dev"
);
},
network_id: 42261,
},
aurora: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://mainnet.aurora.dev"
);
},
2022-04-09 05:06:10 -07:00
network_id: 0x4e454152,
from: "0xE2e2d9E31d7e1CC1178Fe0d1c5950f6C809816a3",
},
aurora_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://testnet.aurora.dev"
);
},
network_id: 0x4e454153,
gas: 10000000,
2023-05-26 06:29:14 -07:00
from: "0x8F26A0025dcCc6Cfc07A7d38756280a10E295ad7", // public key
},
fantom: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ftm.tools/"
);
},
network_id: 250,
gas: 8000000,
gasPrice: 3000000000000,
timeoutBlocks: 15000,
},
fantom_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.testnet.fantom.network/"
);
},
network_id: 0xfa2,
},
karura: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
2022-05-19 15:08:18 -07:00
// NOTE: To use this local host, needed to run this: ENDPOINT_URL=wss://karura-rpc-1.aca-api.network npx @acala-network/eth-rpc-adapter@latest
// "http://localhost:8545"
"https://eth-rpc-karura.aca-api.network/"
);
},
network_id: 686,
2022-05-19 15:08:18 -07:00
// NOTE: run ./karura-gas-prices and update the following two values, otherwise the transactions will likely fail
gasPrice: "0x2fad8f03ea",
gasLimit: "0x329b140",
gas: "0x329b140",
},
karura_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://eth-rpc-karura-testnet.aca-staging.network"
);
},
network_id: 596,
2023-05-26 06:29:14 -07:00
gasPrice: "0x3006b003ea",
2022-06-22 09:12:13 -07:00
gasLimit: "0x329b140",
gas: "0x329b0dc",
},
2022-06-02 09:18:44 -07:00
acala: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
// To use this local host, needed to run this: ENDPOINT_URL=wss://acala-rpc-0.aca-api.network npx @acala-network/eth-rpc-adapter@latest
//"http://localhost:8545"
"https://eth-rpc-acala.aca-api.network/"
);
},
network_id: 787,
gasPrice: "0x33a70303ea",
gasLimit: "0x6fc3540",
gas: "0x6fc3400",
},
acala_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://eth-rpc-acala-testnet.aca-staging.network"
);
},
network_id: 597,
2023-05-26 06:29:14 -07:00
gasPrice: "0x33a70303ea", // Query for gas parameters.
gas: "0x6fc3540", // This is the value reported as "gasLimit" in the query.
},
klaytn: {
// Note that Klaytn works with version 5.3.14 of truffle, but not some of the newer versions.
provider: () => {
return new KLAYHDWalletProvider(
process.env.MNEMONIC,
"https://public-node-api.klaytnapi.com/v1/cypress"
);
},
network_id: "8217", //Klaytn mainnet's network id
gas: "8500000",
gasPrice: null,
},
klaytn_testnet: {
// Note that Klaytn works with version 5.3.14 of truffle, but not some of the newer versions.
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://api.baobab.klaytn.net:8651/"
);
},
network_id: "1001",
gas: "8500000",
gasPrice: null,
},
celo: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://forno.celo.org"
);
},
network_id: 42220,
2022-05-12 09:12:40 -07:00
gas: 8000000,
gasPrice: null,
},
celo_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://alfajores-forno.celo-testnet.org"
);
},
network_id: 44787,
},
2022-07-21 09:52:53 -07:00
moonbeam: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.api.moonbeam.network"
//"https://moonbeam.api.onfinality.io/public" // When the core was deployed on 7/21/2022, the one above kept timing out but this one worked.
);
},
network_id: 1284,
},
moonbeam_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.api.moonbase.moonbeam.network"
);
},
network_id: 1287,
gasPrice: 3000000000, // 3.0 gwei
timeoutBlocks: 15000,
},
2022-07-21 09:52:53 -07:00
neon_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://proxy.devnet.neonlabs.org/solana"
);
},
network_id: "*",
gas: 3000000000,
gasPrice: 443065000000,
},
arbitrum: {
// Note that arbitrum did not work with our standard version of truffle (5.3.14), but it did work with the latest (5.5.22)
2022-07-20 11:38:16 -07:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://arb1.arbitrum.io/rpc"
);
},
network_id: 42161,
},
2022-09-27 12:41:01 -07:00
arbitrum_testnet: {
2022-07-20 11:38:16 -07:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
2022-09-27 12:41:01 -07:00
"https://goerli-rollup.arbitrum.io/rpc"
2022-07-20 11:38:16 -07:00
);
},
2022-09-27 12:41:01 -07:00
network_id: 421613,
2022-07-20 11:38:16 -07:00
},
optimism: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://mainnet.optimism.io"
);
},
network_id: 10,
},
2022-07-21 09:52:53 -07:00
optimism_testnet: {
2022-07-20 11:38:16 -07:00
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ankr.com/optimism_testnet"
// "https://goerli.optimism.io" <== This didn't work for testnet
2022-07-20 11:38:16 -07:00
);
},
network_id: 420,
},
gnosis: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.gnosischain.com/"
);
},
network_id: 100,
},
gnosis_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://sokol.poa.network/"
);
},
network_id: 77,
},
base_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://goerli.base.org"
);
},
network_id: 84531,
},
2023-04-03 07:24:17 -07:00
sepolia_testnet: {
provider: () => {
return new HDWalletProvider(
process.env.MNEMONIC,
"https://rpc.ankr.com/eth_sepolia"
);
},
network_id: "11155111",
},
2022-01-13 13:44:32 -08:00
},
2020-08-06 14:32:31 -07:00
2022-01-13 13:44:32 -08:00
compilers: {
solc: {
version: "0.8.4",
settings: {
optimizer: {
enabled: true,
runs: 200,
},
Relayer: Ethereum folder Changes for Merging into Main (#3038) * gRelayer: surrounding files * modification to get compilation * restore devnet * remove generic relayer docker * remove wait for relayer engine * keep build time 20 * sh -> bash * sh -> bash * Remove comment * bash -> sh * Revert "bash -> sh" This reverts commit 5c37e92fa19bbdbefc79c8ee0dbceeb127c53373. * bash->sh * gRelayer: ethereum folder changes for generic-relayer-merge * add eth-devnet * Adds .github because workflow needs to install forge * sdk-ci-tests need to install forge * don't wait for nonexistent relayer engine * update package.json and package-lock.json * Remove unnecessary types from package.json * ts-node * gRelayer: ethereum folder changes for generic-relayer-merge * sdk-ci-tests need to install forge * don't wait for nonexistent relayer engine * update package.json and package-lock.json * remove these changes * Relayer: Natspec documentation in IWormholeRelayer (#3032) * WIP * Fixes * Updated interfaces * remove bash * Forward uses same refund chain id and refund address (#3034) * WIP * Fixes * Forward uses same refund chain id and refund address * Updated interfaces * Remove forge build warnings * Add note to interface for resend * via-ir on unless in Tilt * Correct IWormholeReceiver interface * Wormhole message fee now part of quoteDeliveryPrice (#3043) * Fix to PR 3043 * Remove compiler warning * Relayer/address drew review (#3060) * Fix typo in Create2Factory * Add event for contract upgrades * Prevent registering contract if it is already registered * Prevent allowing unset chainId for default delivery provider governance VAA * memory to calldata for external functions in WormholeRelayerSend * continue memory to calldata for external functions * Fix pricing in delivery provider * Sanity check new default delivery provider isn't 0 address * Don't save vaaKey as local variable * cache the length of array rather than iterate every time for vaaKeys * Replacing memory with calldata in few locations * Remove stale file DeliveryProviderMessages * Remove batch VAA sender script * Remove batch VAA from WormholeSimulator * Wait for a confirmation in deploy scripts * remove unnecessary comments * Fix Delivery Provider Pricing and add a test * remove console logs * Revert "continue memory to calldata for external functions" This reverts commit f322afb6c0bbd09e3d04ab42a90e592ff752f6bf. * Revert "memory to calldata for external functions in WormholeRelayerSend" This reverts commit 42fcaad8842d0c81506c9586d8d0fd98f6bb6ae1. * Revert "Don't save vaaKey as local variable" This reverts commit a9172379c564fd430a083645c1c42c78e014d68d. * Revert "cache the length of array rather than iterate every time for vaaKeys" This reverts commit d61380a9b0c0671e67e3bd5d874ae339e180dd34. * Revert "Replacing memory with calldata in few locations" This reverts commit 94e47b6e72eaaa52ac0ba2980c439180401fafd7. * Revert "Fix typo in Create2Factory" This reverts commit a9f7bdf461945c8abf020007d16bbc6b4301d051. * Update contract addresses for via-ir * Slight improvements to delivery provider implementation * typed errors for delivery provider * enable VIA-IR in CI and not in Tilt * correct contract address for via ir * WormholeRelayerSend and WormholeRelayerDelivery (#3082)
2023-06-13 14:01:43 -07:00
viaIR: false,
2022-01-13 13:44:32 -08:00
},
2020-08-06 14:32:31 -07:00
},
2022-01-13 13:44:32 -08:00
},
2020-08-17 14:01:59 -07:00
2022-01-13 13:44:32 -08:00
plugins: ["@chainsafe/truffle-plugin-abigen", "truffle-plugin-verify"],
2022-01-13 13:44:32 -08:00
api_keys: {
etherscan: process.env.ETHERSCAN_KEY,
},
2020-08-06 14:32:31 -07:00
};