Я пытаюсь развернуть незавершенное децентрализованное приложение в сети 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 для разработки
Если вы работаете в Windows, убедитесь, что вы используете truffle-config.js
другое использование truffle.js
для настройки. Я обычно синхронизирую оба файла, чтобы избежать путаницы.
Проблема была устранена после новой установки трюфеля.
Не уверен, насколько это полезно сейчас, но для справки в будущем: я перешел от конфигураций трюфелей, так как у меня были некоторые проблемы в основной сети. Некоторое время я выполнял развертывание, используя простые старые сценарии 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()
Вставьте это в файл, измените свои контракты
Дэвид Вейр
еще один