Hi @Godtide,
What version of Truffle are you using? Is this local or a global install?
What operating system are you using?
Can you share your networks configuration from truffle-config.js
for your development network that you are deploying to? (
Please do not include any secrets such as private keys or API keys)
I tried to reproduce with the following example with a larger number of parameters but didn’t get any issues. I am using Windows Subsystem for Linux (WSL2) on Windows 10.
Box.sol
// contracts/Box.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.7.4;
contract Box {
uint256 private value;
// Emitted when the stored value changes
event ValueChanged(uint256 newValue);
// Stores a new value in the contract
function store(uint256 newValue) public {
value = newValue;
emit ValueChanged(newValue);
}
// Stores a new value in the contract
function initialize(address a1, address a2, address a3, address a4, address a5, address a6, address a7) public {
value = 23;
emit ValueChanged(23);
}
// Reads the last stored value
function retrieve() public view returns (uint256) {
return value;
}
}
2_deploy_box.js
// migrations/2_deploy_box.js
const Box = artifacts.require('Box');
const { deployProxy } = require('@openzeppelin/truffle-upgrades');
module.exports = async function (deployer, networks, accounts) {
await deployProxy(Box, [accounts[1], accounts[2], accounts[3], accounts[4], accounts[5], accounts[6], accounts[7]], { deployer, initializer: 'initialize' });
};
Migrate
Using Truffle develop, with Truffle installed locally
$ npx truffle develop
...
truffle(develop)> migrate
Compiling your contracts...
...
Starting migrations...
======================
> Network name: 'develop'
> Network id: 5777
> Block gas limit: 6721975 (0x6691b7)
1_initial_migration.js
...
2_deploy_box.js
===============
Deploying 'Box'
---------------
...
Deploying 'ProxyAdmin'
----------------------
...
Deploying 'AdminUpgradeabilityProxy'
------------------------------------
...