вопросы развертывания смарт-контракта на надежность в тестовой сети Rinkeby - PullRequest
0 голосов
/ 13 сентября 2018

Я использую openZeppelin, чтобы заключить краудсейл-контракт, все (30 из них) мои тесты проходят в плавающих тонах;) и я могу без проблем перейти на локальный блокчейн ganache.

  1. Когда я пытаюсь выполнить развертывание на rinkeby, у меня возникают проблемы. Мой конфиг в truffle.js

    rinkeby: {
      provider: rinkeybyProvider,
      network_id: 3,
      gas: 4712388,
      gasPrice: web3.utils.toWei("40", "gwei"),
      websockets: true,
      from: "0x9793371e69ed67284a1xxxx"
    }

При развертывании на rinkeby я получаю:

"SplitWallet" ударил оператор запроса или возврата где-то в его конструктор. Попробуйте: * Проверка того, что ваши параметры конструктора удовлетворяют все требуют условий. * Добавление строк причины к вашему требованию заявления.

Я прошел и помещал сообщения в каждый возврат в иерархии конструктора, но я никогда не вижу ни одного из сообщений. Я подумал, что мои получатели и акции были разной длины, но нет, они одинаковы (только параметры, которые принимает конструктор для splitwallet)

Что следует отметить:

  • У меня есть ключ infura api
  • Я использую truffle-wallet-provider провайдера, используя только закрытый ключ (без мнемоники) для развертывания
  • Я запутался (из-за вышеизложенного), как мой сценарий развертывания может знать несколько (10) кошельков при развертывании. Обычно (в ganache) это 10 кошельков, которые ganache генерирует для вас, но здесь я предоставляю закрытый ключ, поэтому он не должен знать 10 кошельков, только один - открытый ключ закрытого ключа, который развертывается. договор, нет? (говорим здесь):

module.exports = async (
  deployer,
  network,
  [owner, purchaser, investor, organisation, ...accounts] //how does it know these??
)

Этот последний пункт заставляет меня задуматься, потому что я распечатал владельца / покупателя, а они совсем не соответствуют моему кошельку с открытым ключом, поэтому я понятия не имею, откуда они берутся. И если они не совпадают, и по умолчанию владельцем является учетная запись [0], то этот кошелек не сможет платить за газ .... возможно ??

Спасибо

1 Ответ

0 голосов
/ 17 сентября 2018

Идентификатор сети Rinkeby равен 4, а не 3.

...