hardhat-ignition
hardhat-ignition copied to clipboard
Ledger integration
Integrate with hardhat-ledger to allow Ignition deployments to leverage a ledger hardware wallet.
There are several issues that create friction between Ignition and hardhat-ledger:
- hardhat ledger exposes ledger accounts through a
ledgerAccountsproperty in the networks config, this information isn't easily available in Ignition Modules (i.e.m.getAccountdoesn't know aboutledgerAccounts), and needs to be passed either as a parameter or manually. We may want to consider adding am.getLedgerAccountor some other API enhancement. - Testing a ledger deploy locally means distributing eth to the ledger account to be used. There is not a clean way of doing this, you can override a task for
node:server-createdandhardhat_setBalancethe ledger address. Or you canm.sendin an Ignition module; however becausem.useModulecan't accept an after you can't encapsulate your live code from your test code, the deploys from the ledger address have to depend on thesenddirectly. hardhat-ledgertakes control of the cli UI to send messages about confirming the transaction in the ledger wallet. This control clashes with the Ignition cli UI.
TODO
- [x] #720