truffle-config.js 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. require('dotenv').config({ path: ".env" });
  2. const HDWalletProvider = require('@truffle/hdwallet-provider');
  3. module.exports = {
  4. networks: {
  5. development: {
  6. host: "127.0.0.1",
  7. port: 8545,
  8. network_id: "*",
  9. },
  10. rinkeby: {
  11. provider: () => new HDWalletProvider(process.env.MNEMONIC, `https://rinkeby.infura.io/v3/`+process.env.INFURA_KEY),
  12. network_id: 4,
  13. gas: 5500000,
  14. confirmations: 2,
  15. timeoutBlocks: 200,
  16. skipDryRun: true
  17. },
  18. goerli: {
  19. provider: () => {
  20. return new HDWalletProvider(process.env.MNEMONIC, 'https://goerli.infura.io/v3/'+process.env.INFURA_KEY)
  21. },
  22. network_id: '5',
  23. gas: 4465030,
  24. gasPrice: 10000000000,
  25. },
  26. binance: {
  27. provider: () => {
  28. return new HDWalletProvider(process.env.MNEMONIC, 'https://bsc-dataseed.binance.org/')
  29. },
  30. network_id: '56',
  31. gas: 80000000,
  32. gasPrice: 8000000000,
  33. },
  34. },
  35. compilers: {
  36. solc: {
  37. version: "0.8.4",
  38. settings: {
  39. optimizer: {
  40. enabled: true,
  41. runs: 200
  42. },
  43. }
  44. }
  45. },
  46. plugins: [
  47. "@chainsafe/truffle-plugin-abigen",
  48. "truffle-plugin-verify"
  49. ],
  50. api_keys: {
  51. etherscan: process.env.ETHERSCAN_KEY
  52. },
  53. };