Трюфель: переход на ropsten, неизвестная сетевая «истинная» ошибка

Я пытаюсь развернуть незавершенное децентрализованное приложение в сети ropsten, используя:

truffle migrate --network ropsten

У меня есть экземпляр geth, работающий в терминале, и я получаю следующую ошибку:

Unknown network "true". See your Truffle configuration file for available networks.

Это мой файл truffle.js:

    module.exports = {
      networks: {
        development: {
          host: "localhost",
          port: 8545,
          network_id: "*" // Match any network id
        },
        ropsten: {
          network_id: 3,
          host: "localhost",
          from: "<<Address is usually here>>",
          port: 8545,
          gas: 2900000
        }
      }
    };

РЕДАКТИРОВАТЬ: я использую Ubuntu для разработки

Ответы (3)

Если вы работаете в Windows, убедитесь, что вы используете truffle-config.jsдругое использование truffle.jsдля настройки. Я обычно синхронизирую оба файла, чтобы избежать путаницы.

Я использую Ubuntu для разработки, поэтому я не думаю, что у меня есть truffle-config.js, только truffle.js. Я отредактирую пост.
Каким-то образом ваша сеть оценивается как «истинная», а не как «ropsten». Файл конфигурации выглядит нормально, но еще раз проверьте наличие опечаток в вашем файле, если он не совсем такой, как вставлен в вопрос.

Проблема была устранена после новой установки трюфеля.

Не уверен, насколько это полезно сейчас, но для справки в будущем: я перешел от конфигураций трюфелей, так как у меня были некоторые проблемы в основной сети. Некоторое время я выполнял развертывание, используя простые старые сценарии node.js, и я даже написал небольшую библиотеку, чтобы помочь себе. Вот фрагмент:

const etherlime = require('etherlime');

const ICOTokenContract = require('./build/contracts/ICOToken.json');

const randomAddress = '0xda8a06f1c910cab18ad187be1faa2b8606c2ec86';

const defaultConfigs = {
    gasPrice: 20000000000,
    gasLimit: 4700000
}

const deployer = new etherlime.InfuraPrivateKeyDeployer('Your Privste KEY', 'ropsten', 'Your infura API key', defaultConfigs);

const runICODeployment = async () => {
    const contractWrapper = await deployer.deploy(ICOTokenContract);
    const transferTransaction = await contractWrapper.contract.transferOwnership(randomAddress);
    const result = await contractWrapper.verboseWaitForTransaction(transferTransaction.hash, 'Transfer Ownership');
}
runICODeployment()

Вставьте это в файл, измените свои контракты