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");
|
//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 @@
|
|||||||
"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"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,14 +1,20 @@
|
|||||||
|
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 = {
|
|||||||
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 = {
|
|||||||
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: '*'
|
||||||
|
},
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user