Commit b9b26e1d by Matt Condon

feat: allow configuration of ropsten and ganache with env variables

parent 887c1bb9
# configure your infura api key (not technically required)
INFURA_API_KEY=
# change the mnemonic that your hd wallet is seeded with
MNEMONIC=
//var Ownable = artifacts.require("ownership/Ownable.sol"); //var Ownable = artifacts.require("ownership/Ownable.sol");
// NOTE: Use this file to easily deploy the contracts you're writing.
// (but make sure to reset this file before committing
// with `git checkout HEAD -- migrations/2_deploy_contracts.js`)
module.exports = function(deployer) { module.exports = function(deployer) {
//deployer.deploy(Ownable); //deployer.deploy(Ownable);
}; };
...@@ -41,5 +41,8 @@ ...@@ -41,5 +41,8 @@
"solidity-coverage": "^0.2.2", "solidity-coverage": "^0.2.2",
"truffle": "^4.0.0", "truffle": "^4.0.0",
"truffle-hdwallet-provider": "0.0.3" "truffle-hdwallet-provider": "0.0.3"
},
"dependencies": {
"dotenv": "^4.0.0"
} }
} }
require('dotenv').config();
require('babel-register'); require('babel-register');
require('babel-polyfill'); require('babel-polyfill');
var provider; const HDWalletProvider = require('truffle-hdwallet-provider');
var HDWalletProvider = require('truffle-hdwallet-provider');
var mnemonic = '[REDACTED]';
if (!process.env.SOLIDITY_COVERAGE){ const providerWithMnemonic = (mnemonic, rpcEndpoint) =>
provider = new HDWalletProvider(mnemonic, 'https://ropsten.infura.io/') new HDWalletProvider(mnemonic, rpcEndpoint)
}
const infuraProvider = network => providerWithMnemonic(
process.env.MNEMONIC,
`https://${network}.infura.io/${process.env.INFURA_API_KEY}`
)
const ropstenProvider = process.env.SOLIDITY_COVERAGE
? undefined
: infuraProvider('ropsten')
module.exports = { module.exports = {
networks: { networks: {
...@@ -18,7 +24,7 @@ module.exports = { ...@@ -18,7 +24,7 @@ module.exports = {
network_id: '*' network_id: '*'
}, },
ropsten: { ropsten: {
provider: provider, provider: ropstenProvider,
network_id: 3 // official id of the ropsten network network_id: 3 // official id of the ropsten network
}, },
coverage: { coverage: {
...@@ -27,6 +33,16 @@ module.exports = { ...@@ -27,6 +33,16 @@ module.exports = {
port: 8555, port: 8555,
gas: 0xfffffffffff, gas: 0xfffffffffff,
gasPrice: 0x01 gasPrice: 0x01
} },
testrpc: {
host: 'localhost',
port: 8545,
network_id: '*'
},
ganache: {
host: 'localhost',
port: 7545,
network_id: '*'
},
} }
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment