Как развернуть (Gnosis) Safe Multisig локально с помощью anvil?
Safe Wallet - это один из самых популярных мультисиг кошельков на Ethereum и других EVM-совместимых блокчейнах. Он широко используется отдельными разработчиками, командами и DAO для безопасного управления криптоактивами.
Этот кошелек достаточно просто развернуть в своей среде разработки. Давайте пойдем по шагам.
1. Для начала нам потребуется скопировать кошелек с официального репо:
git clone https://github.com/safe-global/safe-smart-account.git
2. Далее установим его зависимости:
npm i
Надеюсь, вы уже знаете как работать с терминалом и у вас не возникнет никаких проблем с этими двумя шагами. В конце можно проверить, что все установилось правильно, выполнив команду:
npm run build
3. Теперь мы готовы запустить все тесты и проверить, готовы ли мы к развертыванию, для этого просто запустите:
npm run test
Выполнение всех тестов займет около 30 минут в зависимости от вашей машины.
Деплой в локальную сеть
4. Создайте файл .env в каталоге проекта со следующим содержимым:
MNEMONIC=”test test test test test test test test test test test junk”
NODE_URL="http://127.0.0.1:8545"
5. Запускаем Anvil:
anvil
6. Это не обязательно, но мы можем перекомпилировать контракты, если в них были внесены какие-либо изменения:
npm run build
7. Теперь, наконец, мы можем развернуть все контракты в локальной сети с помощью команды
npx hardhat --network custom deploy
В терминале появятся логи с контрактами и адресами Safe для дальнейшего взаимодействия.
Вот, в общем, и все! Мы сделали деплой Safe в локальную сеть и теперь можно отправлять транзакции с нашего проекта для тестирования вызовов.
#multisig