Title: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 16, 2017, 10:02:34 AM Всем привет, подскажите как правильно развернуть контракт в реальную сеть? Использую фреймворк truffle.
Title: Re: Как развернуть контракт в реальную сеть? Post by: Snappsiz on October 16, 2017, 11:48:00 AM Всем привет, подскажите как правильно равзвернуть контракт в реальную сеть? Использую фреймворк truffle. https://golos.io/ru--blokcheijn/@ferumflex/kak-zapustit-ico-na-ethereum-s-pomoshyu-smart-kontraktaTitle: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 16, 2017, 12:08:51 PM Всем привет, подскажите как правильно равзвернуть контракт в реальную сеть? Использую фреймворк truffle. https://golos.io/ru--blokcheijn/@ferumflex/kak-zapustit-ico-na-ethereum-s-pomoshyu-smart-kontraktaTitle: Re: Как развернуть контракт в реальную сеть? Post by: ShDenis on October 16, 2017, 12:45:38 PM Всем привет, подскажите как правильно равзвернуть контракт в реальную сеть? Использую фреймворк truffle. https://golos.io/ru--blokcheijn/@ferumflex/kak-zapustit-ico-na-ethereum-s-pomoshyu-smart-kontraktaпо теории, вопрос к какой сети подключен truffle. Т.е. сперва нужно поднять локальную ноду с реальным блокчейном и потом указать её трюфелю для выгрузки. Либо, можно попробовать указать чужую с открытым RPC, если есть адрес и порт... Это что касается разворачивания а реальную сеть. А вот с контрактами, которые один другого разворачивает вопрос как-то непонятно задан. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 16, 2017, 01:00:25 PM Всем привет, подскажите как правильно равзвернуть контракт в реальную сеть? Использую фреймворк truffle. https://golos.io/ru--blokcheijn/@ferumflex/kak-zapustit-ico-na-ethereum-s-pomoshyu-smart-kontraktaпо теории, вопрос к какой сети подключен truffle. Т.е. сперва нужно поднять локальную ноду с реальным блокчейном и потом указать её трюфелю для выгрузки. Либо, можно попробовать указать чужую с открытым RPC, если есть адрес и порт... Это что касается разворачивания а реальную сеть. А вот с контрактами, которые один другого разворачивает вопрос как-то непонятно задан. Title: Re: Как развернуть контракт в реальную сеть? Post by: ShDenis on October 16, 2017, 04:31:39 PM Правильно ли я понимаю, что мне нужно просто поднять ноду, сконфигурировать на неё truffle и как обычно запустить truffle migrate? даИли я могу не поднимать ноду а отправить контракт на ноду infura? не знаю что за infura, но наверное да, если на ней запущен RPC и у вас есть хост и порт и не будет проблем достучаться. Я взял для примера 2 контракта, пример токена и пример краудсейла. Контракт краудсейла внутри себя разворачивает токен через new MyToken(). Если смотреть скрипты деплоя truffle то видно что он первым разворачивает стандартный контракт Migrations, затем краудсейл. Токена я в логах деплоя не увидел, но он видимо разворачивается из краудсейла. скрипты деплоя, это те что в папке migrations? в них первым деплоится migrations.sol (стандартный для трюфеля) и затем деплоятся все необходимые самописные контракты. Что вы там должны были увидеть в деплоях, зависит от того, что у вас было изначально (создано трюфелем покоманде truffle init). Необходимо лишнее убрать и оставить только то, что вам нужно. Если вы деплоите контракт, а он в свою очередь создаёт в конструкторе второй контракт, то второй контракт вам деплоить не нужно (по теории, сам сейчас проверять буду, но кажется что так), поскольку в этом случае в блокчейне вторых контрактов у вас должно оказаться два, один из которых нужный, созданный по new MyToken() со ссылкой внутри краудсейла, а второй ненужный, который ни к чему привязан не будет. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 16, 2017, 06:04:07 PM Спасибо за ответы, понемногу проясняется.
Quote скрипты деплоя, это те что в папке migrations? Да Quote в них первым деплоится migrations.sol (стандартный для трюфеля) Можно его не деплоить вообще? Как мне узнать адрес токена который деплоился краудсейлом? Title: Re: Как развернуть контракт в реальную сеть? Post by: ShDenis on October 17, 2017, 08:21:11 AM migrations.sol не деплоить не пробовал, но вроде как читал что можно. Просто лишитесь части функционала по управлению версиями, вроде как (могу ошибаться). Внутри контракта-создателя обычно сохраняют адрес в параметр (переменную). Далее, если нужно, можно сделать переменную публичной или добавить getter (только для владельца). А ещё в логах можно попробовать поискать (опять таки, по логам сам не пробовал искать).
Title: Re: Как развернуть контракт в реальную сеть? Post by: verudza on October 17, 2017, 10:08:02 AM Разрабатываем смарт-контракты на заказ.
Опытная команда. Аудит безопасности. Консультации по техническому запуску ICO. Связь: slava(точка)brall(собака)gmail(точка)com Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 18, 2017, 09:20:22 AM Разрабатываем смарт-контракты на заказ. Судя по вашему статусу на форуме, очень сомнительно, что команда опытная :)Опытная команда. Аудит безопасности. Консультации по техническому запуску ICO. Связь: slava(точка)brall(собака)gmail(точка)com Разработать и сами можем, вопрос был с разверткой через truffle. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 18, 2017, 09:31:23 AM Настроил truffle на сервер infura, но при разворачивании получаю ошибку:
Code: Error encountered, bailing. Network state unknown. Review successful transactions manually. Конфиг truffle: Code: module.exports = { Разворачиваю командой: Code: truffle migration --reset --network=live Мнемоническая фраза проверена, на адресе есть баланс. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 18, 2017, 05:51:12 PM Пробовал поднять ноду на geth, но тоже потерпел фиаско.
Code: geth --unlock 0xADDR Конфиг truffle: Code: module.exports = { Ошибка: Code: Error encountered, bailing. Network state unknown. Review successful transactions manually. Title: Re: Как развернуть контракт в реальную сеть? Post by: websalamander on October 20, 2017, 10:28:04 AM Пробовал поднять ноду на geth, но тоже потерпел фиаско. Поставьте после network_id: '1' какой-либо лимит(4500000-5000000) gas: - может подхватит...Code: geth --unlock 0xADDR Конфиг truffle: Code: module.exports = { Ошибка: Code: Error encountered, bailing. Network state unknown. Review successful transactions manually. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 21, 2017, 12:58:14 PM Поставьте после network_id: '1' какой-либо лимит(4500000-5000000) gas: - может подхватит... Code: module.exports = { С таким конфигом другая ошибка: Code: Error: insufficient funds for gas * price + value Title: Re: Как развернуть контракт в реальную сеть? Post by: websalamander on October 23, 2017, 05:59:04 AM Поставьте после network_id: '1' какой-либо лимит(4500000-5000000) gas: - может подхватит... Code: module.exports = { С таким конфигом другая ошибка: Code:
Title: Re: Как развернуть контракт в реальную сеть? Post by: ShDenis on October 23, 2017, 07:09:49 AM Тоже поимел большую проблему с газом при разворачивании конрактов. Вот это вот: exceeds block gas limit может означать, что вы пытаетесь заливая контракты превысить газ, который нужен для всего блока транзакций. Т.е. код большой к заливке.
По-другому, есть стандартный размер блока (можно настраивать, но этого делать не стоит, поскольку будут нестыковки потом с реальной сетью) и он потребляет определённое количество газа (примерно 4 700 000) на своё заполнение. Я так понял, что (если всё компилируется нормально) выгружая контракт получается только одна транзакция с размером, превышающим по газу возможности блока. Однако, это всё мои догадки, поскольку на подобные вопросы в этой же ветке форума, мне детального разъяснения никто не дал. п.с. Мне, в моём случае, например, сейчас придётся не то что бы оптимизировать контракты для уменьшения потребления, а скорее всего придётся отказываться от единоразовой выгрузки всех контрактов при создании основного контракта. Отказываться в пользу ручного создания доп. контрактов системы с их последующим подключением к системе. Т.е. разбивать код на части. Что есть не совсем удобно. Т.е. плохо. Title: Re: Как развернуть контракт в реальную сеть? Post by: x0r2 on October 23, 2017, 03:23:19 PM Quote Вы забыли порядки - вот и пишет, что "недостаточно средств" - почитайте What is Gas? (https://myetherwallet.github.io/knowledge-base/gas/what-is-gas-ethereum.html) Geth не давал менять больше 5000, пробовал различные значения. С Parity вроде завелось, транзакция прошла, но с газом так до конца и не разобрался. |