Error: Global Truffle config not found: Truffle >=5.1.35 is required

:computer: Environment
Truffle v5.1.5 (core: 5.1.5)
Solidity - 0.6.0 (solc-js)
Node v12.18.2
Web3.js v1.2.1

:memo:Details
I’m following the Smart Contract Upgrade tutorial from the docs - https://docs.openzeppelin.com/learn/upgrading-smart-contracts and encountered a bug while running the truffle migrate on the development network. This is after adding the deployProxy function to the migration. Prior to that the contracts deployment was successful.

Error Log:

Error: Global Truffle config not found: Truffle >=5.1.35 is required. Truffle exec not yet supported
at Object.getTruffleConfig (/home/saru/round/contract-upgrade/node_modules/@openzeppelin/truffle-upgrades/src/truffle.ts:86:11)
at deployProxy (/home/saru/round/contract-upgrade/node_modules/@openzeppelin/truffle-upgrades/src/deploy-proxy.ts:44:62)
at module.exports (/home/saru/round/contract-upgrade/migrations/2_deploy_box.js:6:26)
at Migration._load (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/migration.js:56:1)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
at Migration.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/migration.js:167:1)
at Object.runMigrations (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:148:1)
at Object.runFrom (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:110:1)
at Object.runAll (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:114:1)
at Object.run (/usr/local/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:79:1)
at runMigrations (/usr/local/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate.js:253:1)
at /usr/local/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate.js:218:1

:1234: Code to reproduce

Steps followed: -

npm init
truffle init
npm install --save-dev @openzeppelin/truffle-upgrades
truffle migrate --reset --network development

As my truffle version is greater than the required, which should not result in the aforementioned error, am I missing something here?

1 Like

Hi @sarang,

Welcome to the community :wave:

Truffle >=5.1.35 is required. You are currently using an earlier version 5.1.5.

I noticed that you are using Truffle installed globally. You may want to install Truffle locally, so that you can manage the version on a project by project basis. (See: https://docs.openzeppelin.com/learn/setting-up-a-node-project#using-npx)

So you can either uninstall Truffle globally and reinstall a later version globally, or install a later version locally.

I tend to only have ganache-cli installed globally these days. (see: Installing packages locally rather than globally (npx))

1 Like

Hello @abcoathup,

Stoked to be part of the community, have been a long time oz user! :innocent:

Yes, The issue was that I had installed Truffle locally but was migrating the contracts using the Truffle global context. Surprisingly, I did not realize that before posting the question. I resolved it by prefixing npx to the migrate command.

npx truffle migrate --reset --network development

It worked as expected and the contracts were deployed successfully.

I’ll also uninstall Truffle Globally to avoid these kind of errors in the future.

Thanks a lot! :slightly_smiling_face:

2 Likes

Hi @sarang,

Great to hear that you resolved. These days I just have ganache-cli installed globally.

I recommend checking what you have installed globally: npm list -g --depth 0

1 Like

Welcome @sarang!

It’s good practice to avoid installing tools globally so that this kind of error can’t happen.

2 Likes

A post was split to a new topic: Test upgradeable contract with OpenZeppelin Test Environment