Как развернуть смарт-контракт в сети Mantle?

Разворачиваем смарт-контракт в Mantle Network.

Рассмотрим основы развертывания смарт-контрактов в сети Mantle. Мы начнем с объяснения необходимых инструментов, как компилировать и развертывать ваши контракты и, наконец, как взаимодействовать с вашим развернутым контрактом.

Для развертывания контракта в тестовой сети Mantle мы будем использовать Remix IDE, позволяющий работать прямо из браузера, в котором установлен кошелек Metamask. Поэтому для начала необходимо выполнить следующие условия:

  1. Установить расширение кошелька Metamask.
  2. Добавить в Metamask тестовую сеть Mantle.
  3. Получить тестовые токены BIT в Mantle Testnet Faucet, которые поступят на ваш кошелек в тестовой сети Ethereum Goerli, после чего используйте мост Bridge Tesnet Mantle.

Переходим в Remix

При первом входе в Remix, может показаться, что на странице огромное количество информации. Вот почему, прежде чем начнем, давайте уделим некоторое время тому, чтобы лучше понять интерфейс Remix.

В макете Remix есть четыре компонента:

  • Боковая панель: интерфейс, который может переключаться между проводником файлов, компилятором контрактов, интерфейсом развертывания и отладчиком.
  • Панель значков: действует как меню для изменения содержимого боковой панели.
  • Основная панель: содержит основной вид для редактирования наших контрактов и отладки.
  • Терминал: интерфейс для чтения результатов выполнения и трассировок.

Разворачиваем смарт-контракт

Теперь, когда вы разобрались с интерфейсом, возвратитесь в основной файловый менеджер. Вы увидите, что в нашем рабочем пространстве по умолчанию Remix предоставил 3 контракта: Storage, Owner и Ballot.

Попробуем развернуть контракт Sorage.sol:

Разворачиваем смарт-контракт Storage.sol

Storage.sol — это очень простой контракт, который имеет только два доступных действия:

  1. Сохраняет номер в блокчейне с помощью функции «Store»
  2. Считывает указанный сохраненный номер с помощью функции «Retrieve»

Поскольку это руководство посвящено развертыванию (а не Solidity), мы будем использовать этот контракт по умолчанию в нашем рабочем процессе. Чтобы скомпилировать контракт, щелкните значок Solidity на левой панели навигации и нажмите «Compile 1_Storage.sol».

Компилируем смарт-контракт

Если есть какие-либо ошибки, они появятся внизу. Например:

Возможные ошибки при компилировании

Теперь, когда контракт скомпилирован, мы можем развернуть его в тестовой сети Mantle. Выберите значок развертывания слева, выберите среду «Injected Provider — MetaMask» и нажмите «Deploy». 

Важно: убедитесь, что вы выбрали сеть Mantle Testnet в MetaMask. Если вы развернете смарт-контракт в любой основной сети, то и комиссия будет сниматься в настоящих, а не тестовых токенах.
Подключаем Metamask для разворачивания смарт-контракта

Подтвердите транзакцию в своем Metamask.

Если вы делали все правильно, то через некоторое время контракт будет развернут, а в поле "Deployed Contracts" появится адрес развернутого вами контракта.

Взаимодействуем со смарт-контрактом

Взаимодействуем с развернутым контрактом через Remix. Введите число в текстовое поле рядом с кнопкой «Store» и нажмите кнопку ее. Поскольку это функция изменения состояния, потребуется подтвердить транзакцию в Metamask.

Взаимодействуем со смарт-контрактом

После того, как транзакция прошла, нажатие на «Retrieve» должно вернуть число, которое мы вставили в текстовое поле выше.

Извлечение

Получаем информации в Mantle Explorer

Мы можем использовать Mantle Explorer, чтобы получить больше информации о нашем контракте и его развертывании. Возвращаясь к интерфейсу развертывания, вы копируете адрес, как показано ниже.

Получаем информации в Mantle Explorer

Затем перейдите в Mantle Explorer, вставьте адрес контракта в строку поиска и нажмите «Search».

Обновление информации после развертывания контракта может занять некоторое время. Здесь вы должны увидеть сведения о транзакции развертывания, а также о любых транзакциях, отправленных вами при взаимодействии с контрактом через Remix.

Транзакции в Mantle Explorer
На этом развертывание смарт-контракта в тестовой сети Mantle завершено.