feat: allow configuration of ropsten and ganache with env variables
This commit is contained in:
5
.env.example
Normal file
5
.env.example
Normal file
@ -0,0 +1,5 @@
|
||||
# configure your infura api key (not technically required)
|
||||
INFURA_API_KEY=
|
||||
|
||||
# change the mnemonic that your hd wallet is seeded with
|
||||
MNEMONIC=
|
||||
@ -1,5 +1,9 @@
|
||||
//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) {
|
||||
//deployer.deploy(Ownable);
|
||||
};
|
||||
|
||||
@ -41,5 +41,8 @@
|
||||
"solidity-coverage": "^0.2.2",
|
||||
"truffle": "^4.0.0",
|
||||
"truffle-hdwallet-provider": "0.0.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"dotenv": "^4.0.0"
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,14 +1,20 @@
|
||||
require('dotenv').config();
|
||||
require('babel-register');
|
||||
require('babel-polyfill');
|
||||
|
||||
var provider;
|
||||
var HDWalletProvider = require('truffle-hdwallet-provider');
|
||||
var mnemonic = '[REDACTED]';
|
||||
const HDWalletProvider = require('truffle-hdwallet-provider');
|
||||
|
||||
if (!process.env.SOLIDITY_COVERAGE){
|
||||
provider = new HDWalletProvider(mnemonic, 'https://ropsten.infura.io/')
|
||||
}
|
||||
const providerWithMnemonic = (mnemonic, rpcEndpoint) =>
|
||||
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 = {
|
||||
networks: {
|
||||
@ -18,7 +24,7 @@ module.exports = {
|
||||
network_id: '*'
|
||||
},
|
||||
ropsten: {
|
||||
provider: provider,
|
||||
provider: ropstenProvider,
|
||||
network_id: 3 // official id of the ropsten network
|
||||
},
|
||||
coverage: {
|
||||
@ -27,6 +33,16 @@ module.exports = {
|
||||
port: 8555,
|
||||
gas: 0xfffffffffff,
|
||||
gasPrice: 0x01
|
||||
}
|
||||
},
|
||||
testrpc: {
|
||||
host: 'localhost',
|
||||
port: 8545,
|
||||
network_id: '*'
|
||||
},
|
||||
ganache: {
|
||||
host: 'localhost',
|
||||
port: 7545,
|
||||
network_id: '*'
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user