truffle-config.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. require('dotenv').config();
  2. require('babel-register');
  3. require('babel-polyfill');
  4. const HDWalletProvider = require('truffle-hdwallet-provider');
  5. const providerWithMnemonic = (mnemonic, rpcEndpoint) =>
  6. new HDWalletProvider(mnemonic, rpcEndpoint);
  7. const infuraProvider = network => providerWithMnemonic(
  8. process.env.MNEMONIC || '',
  9. `https://${network}.infura.io/${process.env.INFURA_API_KEY}`
  10. );
  11. const ropstenProvider = process.env.SOLIDITY_COVERAGE
  12. ? undefined
  13. : infuraProvider('ropsten');
  14. module.exports = {
  15. networks: {
  16. development: {
  17. host: 'localhost',
  18. port: 8545,
  19. network_id: '*', // eslint-disable-line camelcase
  20. },
  21. ropsten: {
  22. provider: ropstenProvider,
  23. network_id: 3, // eslint-disable-line camelcase
  24. },
  25. coverage: {
  26. host: 'localhost',
  27. network_id: '*', // eslint-disable-line camelcase
  28. port: 8555,
  29. gas: 0xfffffffffff,
  30. gasPrice: 0x01,
  31. },
  32. testrpc: {
  33. host: 'localhost',
  34. port: 8545,
  35. network_id: '*', // eslint-disable-line camelcase
  36. },
  37. ganache: {
  38. host: 'localhost',
  39. port: 7545,
  40. network_id: '*', // eslint-disable-line camelcase
  41. },
  42. },
  43. };