8b010f887d
* Add console.table * First steps in validate script * env rename * Added parameter names * Descriptions * Print and configuration * Added more parameters * Rename gas oracle to gas supplier * More changes * Removed env examples for now * RPC rename * Bridge address rename * More changes * jobs * Renames * Typo * jobs * Changes * jobs * Changes * Monitor changes * jovs * Typo * Changes * REACT_APP_ env prefix * Typo * Rollback changes * Oracle deployment * Defaults * Monitor * Naming * Typo * Typo * Envs * ui deployment * ALl jobs * Vars in ultimate * Lint * Lint * Lint * Another way to add REACT_APP prefixing * Unnecessary mapping * No output timeout * No output timeout * Got rid of ERC20_TOKEN_ADDRESS * Configuration readme * Configuration * Prefixes * timeout * Docs * Docs * docs * docs * docs * Roll back ERC20_TOKEN_ADDRESS for erc-to-erc * Typo * lint * Rollback * ROllback validator * Rollback yarn.lock * dai and wetc update * Rollback ERC20_TOKEN_ADDRESS * erc to native * examples * all jobs * roll back * roll back ERC20_TOKEN_ADDRESS: "0xdbeE25CbE97e4A5CC6c499875774dc7067E9426B" * ui env example * typo * Allow rpc for ultimate * Test * ERC20_TOKEN_ADDRESS rollback * Specify port * React port * All jobs * cosmetics * Values * Restore erc20 token * Rearrange example for easier comparision * Rearrange ultimate for easier comparision * Rearrange for easier comparision * Refactor * Conditional app styles * Loading environment variables in react app * Add missing vars for UI in wetc and dai * Bring back test parameters readme * Readme for monitor vars * Reading environment variables in e2e-commons (#207)
94 lines
2.7 KiB
JavaScript
94 lines
2.7 KiB
JavaScript
require('../env')
|
|
|
|
const { toBN } = require('web3').utils
|
|
const {
|
|
BRIDGE_MODES,
|
|
HOME_NATIVE_TO_ERC_ABI,
|
|
FOREIGN_NATIVE_TO_ERC_ABI,
|
|
HOME_ERC_TO_ERC_ABI,
|
|
FOREIGN_ERC_TO_ERC_ABI,
|
|
HOME_ERC_TO_NATIVE_ABI,
|
|
FOREIGN_ERC_TO_NATIVE_ABI
|
|
} = require('../../commons')
|
|
const { web3Home, web3Foreign } = require('../src/services/web3')
|
|
const { privateKeyToAddress } = require('../src/utils/utils')
|
|
|
|
const { ORACLE_VALIDATOR_ADDRESS, ORACLE_VALIDATOR_ADDRESS_PRIVATE_KEY } = process.env
|
|
|
|
let homeAbi
|
|
let foreignAbi
|
|
let id
|
|
|
|
switch (process.env.ORACLE_BRIDGE_MODE) {
|
|
case BRIDGE_MODES.NATIVE_TO_ERC:
|
|
homeAbi = HOME_NATIVE_TO_ERC_ABI
|
|
foreignAbi = FOREIGN_NATIVE_TO_ERC_ABI
|
|
id = 'native-erc'
|
|
break
|
|
case BRIDGE_MODES.ERC_TO_ERC:
|
|
homeAbi = HOME_ERC_TO_ERC_ABI
|
|
foreignAbi = FOREIGN_ERC_TO_ERC_ABI
|
|
id = 'erc-erc'
|
|
break
|
|
case BRIDGE_MODES.ERC_TO_NATIVE:
|
|
homeAbi = HOME_ERC_TO_NATIVE_ABI
|
|
foreignAbi = FOREIGN_ERC_TO_NATIVE_ABI
|
|
id = 'erc-native'
|
|
break
|
|
default:
|
|
if (process.env.NODE_ENV !== 'test') {
|
|
throw new Error(`Bridge Mode: ${process.env.ORACLE_BRIDGE_MODE} not supported.`)
|
|
} else {
|
|
homeAbi = HOME_ERC_TO_NATIVE_ABI
|
|
foreignAbi = FOREIGN_ERC_TO_NATIVE_ABI
|
|
id = 'erc-native'
|
|
}
|
|
}
|
|
|
|
let maxProcessingTime = null
|
|
if (String(process.env.ORACLE_MAX_PROCESSING_TIME) === '0') {
|
|
maxProcessingTime = 0
|
|
} else if (!process.env.ORACLE_MAX_PROCESSING_TIME) {
|
|
maxProcessingTime =
|
|
4 * Math.max(process.env.ORACLE_HOME_RPC_POLLING_INTERVAL, process.env.ORACLE_FOREIGN_RPC_POLLING_INTERVAL)
|
|
} else {
|
|
maxProcessingTime = Number(process.env.ORACLE_MAX_PROCESSING_TIME)
|
|
}
|
|
|
|
const bridgeConfig = {
|
|
homeBridgeAddress: process.env.COMMON_HOME_BRIDGE_ADDRESS,
|
|
homeBridgeAbi: homeAbi,
|
|
foreignBridgeAddress: process.env.COMMON_FOREIGN_BRIDGE_ADDRESS,
|
|
foreignBridgeAbi: foreignAbi,
|
|
eventFilter: {},
|
|
validatorAddress: ORACLE_VALIDATOR_ADDRESS || privateKeyToAddress(ORACLE_VALIDATOR_ADDRESS_PRIVATE_KEY),
|
|
maxProcessingTime
|
|
}
|
|
|
|
const homeConfig = {
|
|
eventContractAddress: process.env.COMMON_HOME_BRIDGE_ADDRESS,
|
|
eventAbi: homeAbi,
|
|
bridgeContractAddress: process.env.COMMON_HOME_BRIDGE_ADDRESS,
|
|
bridgeAbi: homeAbi,
|
|
pollingInterval: process.env.ORACLE_HOME_RPC_POLLING_INTERVAL,
|
|
startBlock: toBN(process.env.ORACLE_HOME_START_BLOCK || 0),
|
|
web3: web3Home
|
|
}
|
|
|
|
const foreignConfig = {
|
|
eventContractAddress: process.env.COMMON_FOREIGN_BRIDGE_ADDRESS,
|
|
eventAbi: foreignAbi,
|
|
bridgeContractAddress: process.env.COMMON_FOREIGN_BRIDGE_ADDRESS,
|
|
bridgeAbi: foreignAbi,
|
|
pollingInterval: process.env.ORACLE_FOREIGN_RPC_POLLING_INTERVAL,
|
|
startBlock: toBN(process.env.ORACLE_FOREIGN_START_BLOCK || 0),
|
|
web3: web3Foreign
|
|
}
|
|
|
|
module.exports = {
|
|
bridgeConfig,
|
|
homeConfig,
|
|
foreignConfig,
|
|
id
|
|
}
|