diff --git a/ethereum/1conf.patch b/ethereum/1conf.patch new file mode 100644 index 000000000..11d3d9c13 --- /dev/null +++ b/ethereum/1conf.patch @@ -0,0 +1,22 @@ +diff --git a/ethereum/contracts/bridge/Bridge.sol b/ethereum/contracts/bridge/Bridge.sol +index 3f06757f..6c70e6fa 100644 +--- a/ethereum/contracts/bridge/Bridge.sol ++++ b/ethereum/contracts/bridge/Bridge.sol +@@ -58,7 +58,7 @@ contract Bridge is BridgeGovernance, ReentrancyGuard { + + sequence = wormhole().publishMessage{ + value : msg.value +- }(nonce, encoded, 15); ++ }(nonce, encoded, 1); + } + + function wrapAndTransferETH(uint16 recipientChain, bytes32 recipient, uint256 arbiterFee, uint32 nonce) public payable returns (uint64 sequence) { +@@ -173,7 +173,7 @@ contract Bridge is BridgeGovernance, ReentrancyGuard { + + sequence = wormhole().publishMessage{ + value : callValue +- }(nonce, encoded, 15); ++ }(nonce, encoded, 1); + } + + function updateWrapped(bytes memory encodedVm) external returns (address token) { diff --git a/ethereum/migrations/6_deploy_bridge_implementation_only.js b/ethereum/migrations/6_deploy_bridge_implementation_only.js new file mode 100644 index 000000000..edb2b6881 --- /dev/null +++ b/ethereum/migrations/6_deploy_bridge_implementation_only.js @@ -0,0 +1,12 @@ +// run with: +// npm run deploy-bridge-implementation-only +// e.g. Ethereum Mainnet +// INFURA_KEY="" MNEMONIC="" npm run deploy-bridge-implementation-only -- --network mainnet +// e.g. BSC +// MNEMONIC="" npm run deploy-bridge-implementation-only -- --network binance +// e.g. Polygon +// MNEMONIC="" npm run deploy-bridge-implementation-only -- --network polygon +const BridgeImplementation = artifacts.require("BridgeImplementation"); +module.exports = async function(deployer) { + await deployer.deploy(BridgeImplementation); +}; diff --git a/ethereum/package.json b/ethereum/package.json index 1c7cf8f81..08b77d868 100644 --- a/ethereum/package.json +++ b/ethereum/package.json @@ -13,7 +13,7 @@ "@truffle/hdwallet-provider": "^1.7.0", "chai": "^4.2.0", "mocha": "^8.2.1", - "truffle": "^5.3.6", + "truffle": "^5.3.14", "truffle-assertions": "^0.9.2", "truffle-plugin-verify": "^0.5.11" }, @@ -22,8 +22,9 @@ "test": "mkdir -p build/contracts && cp node_modules/@openzeppelin/contracts/build/contracts/* build/contracts/ && truffle test", "migrate": "mkdir -p build/contracts && cp node_modules/@openzeppelin/contracts/build/contracts/* build/contracts/ && truffle migrate --to 5", "flatten": "mkdir -p node_modules/@poanet/solidity-flattener/contracts && cp -r contracts/* node_modules/@poanet/solidity-flattener/contracts/ && poa-solidity-flattener", - "deploy_weth9": "mkdir -p build/contracts && cp node_modules/@openzeppelin/contracts/build/contracts/* build/contracts/ && truffle migrate --f 9", - "verify": "patch -u -f node_modules/truffle-plugin-verify/constants.js -i truffle-verify-constants.patch; truffle run verify $npm_config_module@$npm_config_contract_address --network $npm_config_network" + "verify": "patch -u -f node_modules/truffle-plugin-verify/constants.js -i truffle-verify-constants.patch; truffle run verify $npm_config_module@$npm_config_contract_address --network $npm_config_network", + "deploy-bridge-implementation-only": "mkdir -p build/contracts && cp node_modules/@openzeppelin/contracts/build/contracts/* build/contracts/ && truffle migrate --f 6", + "deploy_weth9": "mkdir -p build/contracts && cp node_modules/@openzeppelin/contracts/build/contracts/* build/contracts/ && truffle migrate --f 9" }, "author": "", "license": "ISC", diff --git a/ethereum/truffle-config.js b/ethereum/truffle-config.js index 4045ba131..6e768a05e 100644 --- a/ethereum/truffle-config.js +++ b/ethereum/truffle-config.js @@ -16,7 +16,7 @@ module.exports = { ), network_id: 1, gas: 10000000, - gasPrice: 101000000000, + gasPrice: 191000000000, confirmations: 1, timeoutBlocks: 200, skipDryRun: false, @@ -55,6 +55,52 @@ module.exports = { gas: 70000000, gasPrice: 8000000000, }, + binance_testnet: { + provider: () => new HDWalletProvider( + process.env.MNEMONIC, + "https://data-seed-prebsc-1-s1.binance.org:8545/" + ), + network_id: "97", + gas: 70000000, + gasPrice: 8000000000, + }, + polygon: { + provider: () => { + return new HDWalletProvider( + process.env.MNEMONIC, + "https://polygon-rpc.com" + ); + }, + network_id: "137", + gas: 10000000, + gasPrice: 700000000000, + }, + mumbai: { + provider: () => { + return new HDWalletProvider( + process.env.MNEMONIC, + "https://polygon-mumbai.infura.io/v3/" + process.env.INFURA_KEY) + }, + 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, + }, + fuji: { + provider: () => new HDWalletProvider( + process.env.MNEMONIC, + "https://api.avax-test.network/ext/bc/C/rpc" + ), + network_id: "43113", + }, oasis: { provider: () => { return new HDWalletProvider(