Развертывание на свой блокчейн - dapplicaio/waxio_document_russian GitHub Wiki

В этом руководстве вы будете использовать cleos для развертывания и тестирования смарт-контракта WAX, который вы создали и скомпилировали в разделе Создание смарт-контракта.

Прежде чем вы начнете

  • nodeos должен быть запущен

    nodeos -e -p eosio \
        --plugin eosio::producer_plugin \ 
        --plugin eosio::chain_api_plugin \
        --plugin eosio::http_plugin \
        --access-control-allow-origin='*' \
        --contracts-console \
        --http-validate-host=false \
        --verbose-http-errors >> nodeos.log 2>&1 &
    
  • Ваш кошелек должен быть открыт и разблокирован

cleos wallet open

cleos wallet unlock --password PW5KRXKVx25yjL3FvxxY9YxYxxYY9Yxx99yyXTRH8DjppKpD9tKtVz

  • Вы должны создать учетную запись WAX для вашего смарт-контракта. Обратитесь к разделу Создание учетных записей, если вы не выполнили этот шаг.

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

Чтобы развернуть файл WASM вашего смарт-контракта в локальном блокчейне, используйте команду cleo set contract из командной строки:

Параметр/Пример

account/waxsc1

Учетная запись вашего смарт-контракта.

path/ /users/wax-blockchain/wax-cdt/mycontracts/wax

Полный путь к вашему файлу WASM.

permission/-p waxsc1@active

Active или Owner разрешения для вашей учетной записи смарт-контракта.

cleos set contract waxsc1 /users/wax-blockchain/wax-cdt/mycontracts/wax -p waxsc1@active

Консоль выведет следующее подтверждение:

Reading WASM from /users/wax-blockchain/wax-cdt/mycontracts/wax/wax.wasm...
Publishing contract...
executed transaction: 8a79664a3f0457513fabaa5753c41b18588cb2994cd5e3164328eafc9663f7a8  2832 bytes  57440 us
#         eosio <= eosio::setcode                   {"account":"waxsc1","vmtype":0,"vmversion":0,"code":"0061736d01000000013a0b60017f0060027f7f0060037f7...
#         eosio <= eosio::setabi                    {"account":"waxsc1","abi":"0e656f73696f3a3a6162692f312e3100010567726565740000010000000080acd46505677...
warning: transaction executed locally, but may not be confirmed by the network yet         ]

Ваш смарт-контракт должен теперь быть запущен в локальном блокчейне.

Проверьте свой смарт-контракт

Чтобы проверить ваш смарт-контракт, используйте команду cleos push action из командной строки:

Параметр/Пример

account/waxsc1

Учетная запись вашего смарт-контракта.

action/hi

Наименование действия.

datastream/‘[“YourName”]’

Введите свое имя или любую другую строку.

permission/-p waxsc1@active

Active или Owner разрешения для вашей учетной записи смарт-контракта.

cleos push action waxsc1 hi '["YourName"]' -p waxsc1@active

Консоль выведет следующее:

executed transaction: 6a0b1489d903f2cacc6480830358f07aaf65b20bf1d7e855dc20097f4d64dc52  104 bytes  1727 us
#        waxsc2 <= waxsc2::hi                   {"nm":"YourName"}
>> Name : YourName
warning: transaction executed locally, but may not be confirmed by the network yet         ]

Если вы получили сообщение об ошибке, что транзакция заняла слишком много времени, снова запустите cleos push action. Если вы все еще получаете сообщение об ошибке, попробуйте перезапустить nodeos.

Error 3080006: Transaction took too long
Error Details:
deadline exceeded
pending console output:

Что дальше?


Руководство по быстрому запуску тестовой сети WAX