Hardhat-deploy: 機能リクエスト:フォークモードでヘルメットのメインネットからの展開を許可する

作成日 2020年11月19日  ·  10コメント  ·  ソース: wighawag/hardhat-deploy

hardhat forkingモードで実行されたときにethers.getContract( "Bar")を待機すると、hardhat-deployに、-networkhardhatが実際にデプロイメントを考慮に入れることができることを通知するのはクールです/フォークで構成されているネットワークから

この問題を参照するhttps://github.com/wighawag/hardhat-deploy-ethers/issues/6

enhancement

全てのコメント10件

0.7.0-beta.29で実装
hardhat node --fork ... --fork-deployments <networkName>経由

参考のためにチャットからコピー:

--fork-deploymentsで渡すネットワーク専用ですか? 私にとって理想的にはこれを行うでしょう:

  1. 契約がそこにない場合は、最初に—fork-deploymentsdeploymentsフォルダーを調べてください
  2. 調べてください—2番目のネットワーク展開フォルダ

このようにして、テストでは、メインネットからフォークされたコントラクトインスタンスと、ハードハットネットワークにのみデプロイしたいモックされたコントラクトインスタンスを混在させることができます。

デプロイメントをチェーンからlocalhostコピーすることで機能します
したがって、デプロイスクリプトは、必要に応じてデプロイをオーバーライドすることを決定できます。

  1. ああ、かっこいい。 展開をコピーするネットワークをどのように知るのですか? forking.url解析しますか?

  2. hardhat networkのメモリ内フォークを使用していますが、テスト中にhardhat nodeインスタンスを実行していません。 これは、メモリ内のヘルメットネットワークでフォークを使用するテストでも機能しますか?

いいえ、良い点です。これはノードタスクのパラメータにすぎません。
テストタスクに追加できるはずです。 再開

re 1.:paramの引数は、コピー元のネットワークの名前です。

実際、 @ gitpushaには、これがどのように設定されているかについてのレポの例がありますか。それを考えると、処理方法にいくつかの変更が必要になる可能性があるためです。
現在メモリネットワーク内にあり、事前に展開された契約情報を持つ機能はありません
同様のパラメータを追加できるかもしれませんが、もっと考える必要があります

実際には、外部デプロイメント構成を使用できるはずです。

何かのようなもの :

hardhat.config.js

module.exports = {
 ...
  external: {
    deployments: {
      hardhat: ['deployments/mainnet'],
    },
  },
}

実際には、外部デプロイメント構成を使用できるはずです

それは甘いでしょう。

hardhat: ['deployments/mainnet']

ツールは、 hardhatdeployments/mainnetdeployments/hardhat両方を調べる必要があることを理解していますか? もしそうなら、どの展開が優先されますか? 明示的に構成したので、コントラクト間に重複がある場合は、 deployments/mainnetを優先させたいと思います。

また、 deployments/hardhatディレクトリはデフォルトで考慮されますか?

これがレポの例です。

この機能がどれほど役立つかはわかりませんが、いつでも使用できます。

await hre.ethers.getContractAt(abi, address)

代わりにforkmode 、特定のネットワークからデプロイされたインスタンスにアクセスします。

だから、それは本当に持っているだけでいいです。

上に投稿した提案を試してみましたが、うまくいくようです。
外部で指定されたデプロイメントは優先されませんが、デフォルトではデプロイメント/ハードハットの契約をリセットするため、ノードとして問題になることはありません。したがって、すでにデプロイされたコントラクトの再デプロイメントを強制しない限り、デプロイメント/メインネットから取得します。

問題をクローズしますが、問題が発生した場合は、お気軽に再開してください

このページは役に立ちましたか?
0 / 5 - 0 評価