首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在安全帽任务中调用一个安全帽插件?

如何在安全帽任务中调用一个安全帽插件?
EN

Stack Overflow用户
提问于 2022-10-01 22:32:28
回答 1查看 49关注 0票数 0

我正在尝试创建一个名为“安全帽扩展”的硬帽子任务,我使用的是nodejs派生,但它不起作用:/

我该怎么做呢?

./任务/checkk.js

代码语言:javascript
复制
const fs = require('fs');
const { spawn } = require('node:child_process')

task("checkk", "check contract's code on etherscan")
    .addPositionalParam("myContract")
    .setAction(async (taskArgs, hre) => {
        const argsFile = `../args/${taskArgs.myContract}.js`

        // after this line this is pseudo code only, nothing works...
        const address = fs.readFile(`./addresses/${taskArgs.myContract}_${hre.network.name}_ADDRESS.txt`, 'utf-8')

        const myCommand = `npx hardhat verify --network ${hre.network.name} ${address} --constructor-args ${argsFile}`
        const command = spawn('myCommand', {
            stdio: 'inherit',
            shell: true
        })
        command.stdout.on('data', (output) => {
            console.log("Output: ", output.toString())
        })
    })
EN

回答 1

Stack Overflow用户

发布于 2022-10-01 23:29:42

好吧,hre.run是我所需要的。

代码语言:javascript
复制
const fs = require('fs');

task("checkk", "check contract's code on etherscan : checkk MyContract --network MyNetwork")
    .addPositionalParam("myContract")
    .setAction(async (taskArgs, hre) => {
        const CONTRACT_ARGUMENTS = require(`../args/${taskArgs.myContract}.js`)
        const address = fs.readFileSync(`./addresses/${taskArgs.myContract}_${hre.network.name}_ADDRESS.txt`, "utf8")

        await hre.run("verify:verify", {
            address: address,
            constructorArguments: CONTRACT_ARGUMENTS,
        });

    })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73922197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档