如何使用不同的配置来测试和部署 hardhat solidity?
How do I use different config for testing vs. deployment hardhat solidity?
现在,在使用 hardhat 时,我有不同的测试和部署配置。目前我正在根据我是在测试还是在部署来更改文件名。这个好像没有optimal/correct.
有谁知道我可以指定使用哪个的方法吗?或者更好的是,一种在配置测试与部署中指定的方法?
测试配置:
require("@nomiclabs/hardhat-waffle");
/**
* @type import('hardhat/config').HardhatUserConfig
*/
module.exports = {
solidity: "0.8.0",
};
部署配置:
* @type import('hardhat/config').HardhatUserConfig
*/
require('dotenv').config();
require("@nomiclabs/hardhat-waffle")
const {API_URL, METAMASK_PRIVATE_KEY} = process.env;
module.exports = {
solidity: "0.8.0",
defaultNetwork: "rinkeby",
networks: {
hardhat: {},
rinkeby: {
url: API_URL,
accounts: [`0x${METAMASK_PRIVATE_KEY}`]
}
},
paths: {
sources: "./contracts",
tests: "./test",
cache: "./cache",
artifacts: "./artifacts"
},
};
我想我真的只是想在测试时忽略“网络”字段...
我意识到这些配置之间的唯一区别是网络标志,为了测试我想使用 hardhat 网络和部署,rinkeby。
将默认网络参数更改为:
defaultNetwork: "Hardhat"
允许我使用 npx hardhat test
命令在 hardhat 网络上 运行 测试。
然后部署我可以使用:
npx hardhat run --network rinkeby scripts/deploy.js
现在,在使用 hardhat 时,我有不同的测试和部署配置。目前我正在根据我是在测试还是在部署来更改文件名。这个好像没有optimal/correct.
有谁知道我可以指定使用哪个的方法吗?或者更好的是,一种在配置测试与部署中指定的方法?
测试配置:
require("@nomiclabs/hardhat-waffle");
/**
* @type import('hardhat/config').HardhatUserConfig
*/
module.exports = {
solidity: "0.8.0",
};
部署配置:
* @type import('hardhat/config').HardhatUserConfig
*/
require('dotenv').config();
require("@nomiclabs/hardhat-waffle")
const {API_URL, METAMASK_PRIVATE_KEY} = process.env;
module.exports = {
solidity: "0.8.0",
defaultNetwork: "rinkeby",
networks: {
hardhat: {},
rinkeby: {
url: API_URL,
accounts: [`0x${METAMASK_PRIVATE_KEY}`]
}
},
paths: {
sources: "./contracts",
tests: "./test",
cache: "./cache",
artifacts: "./artifacts"
},
};
我想我真的只是想在测试时忽略“网络”字段...
我意识到这些配置之间的唯一区别是网络标志,为了测试我想使用 hardhat 网络和部署,rinkeby。
将默认网络参数更改为:
defaultNetwork: "Hardhat"
允许我使用 npx hardhat test
命令在 hardhat 网络上 运行 测试。
然后部署我可以使用:
npx hardhat run --network rinkeby scripts/deploy.js