I'm trying to deploy a contract and I don't require Migrations.sol in any of my migrations. I don't even have this file in my contracts folder. And I run truffle migrate inside my project folder. But it says that can't deploy cause can not find artifacts for Migrations.sol. And shows me that

Error encountered, bailing. Network state unknown. Review successful transactions manually. Error: Could not find artifacts for ./Migrations.sol from any sources at Resolver.require (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:69108:9)

Please help me understand what's happenning and how do I solve it?

  • Can you copy paste the content of your migration file ? – Julien Klepatch Nov 20 '17 at 12:26
  • Yes, it's very simple >var TeozToken = artifacts.require("./MyToken.sol"); module.exports = function(deployer) { deployer.deploy(MyToken); }; and > var Ownable = artifacts.require("./Ownable.sol"); module.exports = function(deployer) { deployer.deploy(Ownable); }; – Олеся Костеева Nov 20 '17 at 12:37
  • Can you do a grep on Migrations.sol on your whole project? You will see where you reference this contract – Julien Klepatch Nov 20 '17 at 12:38
  • What do you mean by "grep on"? I don't reference it in my project (in the one, I'm trying to deploy) – Олеся Костеева Nov 20 '17 at 12:47
  • i mean the grep command line utility that allow you to search into multiple files. – Julien Klepatch Nov 20 '17 at 12:49

Try it:

var Adoption = artifacts.require("MyToken.sol");

module.exports = function(deployer) {
|improve this answer|||||

Running truffle migrate requires the Migrations.sol that comes with truffle init or truffle unbox. You won't be able to run migrations without it since that is how the migrate tools track the current state of migrations.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.