Развертывание универсального контракта
Универсальный контракт относится к контактам CosmWasm и не содержит функциональных особенностей dex модуля Sei.
Если вы уже запустили локальную версию блокчейна (см. инструкцию по запуску), следующие шаги помогут вам загрузить ваш контракт в блокчейн.
1. Сборка контракта Cosmwasm
Соберите образ контракта. Обратите внимание, что следующие команды запускаются в директории контракта, поэтому необходимо убедиться, что seid есть в переменной $PATH:
2. Предложение сообществу на загрузку контракта
Обратите внимание, что на локальной машине и в блокчейне sei-devnet-1 вы можете пропустить шаг 2 и шаг 3, а сохранить wasm контракт напрямую в блокчейн:
Вернитесь в репозитарий sei-chain и подайте заявку в гаверненс блокчейна для загрузки wasm контракта.
Ссылка на руководство https://docs.cosmwasm.com/tutorials/governance/#submit-proposal для более детального изучения процесса установки и исполнения контракта.
3. Голосование за предложенный контракт
После вынесения предложения на голосование, оно должно быть одобрено гаверненсом. Найдите id предложения и проголосуйте за него.
4. Создание контракта
После того, как ваше предложение будет одобрено, вы можете создавать контракт в блокчейне. Обратите внимание, что в пример ниже $CONTRACT_ID равно 1, а $LABEL может быть любым именем контракта:
В фигурных скобках '{}'
указываются параметры, которые вы передаете для создания контракта. В нашем примере контракт не получает никаких параметров, поэтому фигурные скобки пустые. Для любого другого настоящего контракта скорей всего понадобятся некоторые параметры. Например, чтобы создать контракт на Vortex, необходимы следующие параметры в скобках (реальные значения могут отличаться от представленных ниже):
После этого вы должны получить примерно такой ответ:
Из ответа вы можете увидеть, что ваш контракт был создан по адресу: sei1wug8sewp6cedgkmrmvhl3lf3tulagm9hnvy8p0rppz9yjw0g4wtqdxfzff
. Вам понадобится этот адрес для любого дальнейшего взаимодействия с контрактом.
5. Выполнение контракта
В этом примере мы посылаем оракулу команду UpdatePrice
для обновления цены токена:
6. Запрос контракта
В этом примере мы посылаем сообщение ораклу GetPrice
для получения цены токена:
Last updated