Unable to deploy contracts on Gnosis
Describe the bug
We are unable to deploy the curve pool contract on Gnosis chain, always got the error message PermissionDenied, permission denied for tx type: Create, actual permissions: None no matter using any deployer addresses.
To Reproduce Steps to reproduce the behavior:
- Download and unzip the attached zip file: permissionDeniedContract.zip.
- Run
yarnto fetch the openzeppelin dependency. - Paste the private key in
.private_keyfile. -
truffle-config.jsand2_deploy_contracts.jsare already properly configured. Runtruffle migrate --network gnosisto deploy the contract. - The error message
PermissionDenied, permission denied for tx type: Create, actual permissions: Noneshows up.
Expected behavior The contract can be deployed.
Tagging @alebanzas @Georgi87 @koeppelmann (and cc @igorbarinov) into this issue
Can you share more details about the deployment transaction, mainly: Sender address, Value, MaxFeePerGas, MaxPriorityFeePerGas, GasLimit, Data ?
Does the node you are using have any custom local permissions set up? Or are you using standard gateway?
Similar issue: https://github.com/NethermindEth/nethermind/issues/3925
@LukaszRozmej Hi, just like the configurations in truffle-config.js:
Transaction Type: legacy
Sender: doesn't matter, the issue is 100% reproducable
Value: unset
GasPrice: 2 Gwei
GasLimit: 7,000,000
Data: byte code of the contract
RPC: https://rpc.gnosischain.com
We also tried EIP-1559 transaction: Transaction Type: EIP-1559 Sender: doesn't matter, the issue is 100% reproducable Value: unset GasPrice: 2 Gwei MaxFeePerGas: 2.1 Gwei MaxPriorityFeePerGas: 2.1 Gwei GasLimit: 7,000,000 Data: byte code of the contract RPC: https://rpc.gnosischain.com
PS:
- Same contract had been deployed multiple times before on Gnosis and they all cost ~5,000,000 so 7,000,000 is quite enough.
- All constructed transactions were successfully being confirmed and packed on many other chains except Gnosis (though same transactions can send months ago), so we think the transaction itself is not the cause.
Same contract had been deployed multiple times before on Gnosis and they all cost ~5,000,000 so 7,000,000 is quite enough.
can you please give a link to deployment on another chain?
@igorbarinov https://etherscan.io/address/0x5dbdd037e6f10fef42cac6d9129588fd49e2c0d9 https://bscscan.com/address/0x426223eef2e4f577767533aa1854E8b980b1Df5F
Any updates? @LukaszRozmej @igorbarinov
I get exactly the same response trying to deploy a contract today, using Hardhat.
jsonRpcResponse: {"jsonrpc":"2.0","error":{"code":-32010,"message":"PermissionDenied, permission denied for tx type: Create, actual permissions: None"},"id":10}
Same result with the same contract, trying to deploy via Remix
@rickcain @0xbeedao
It looks weird but try do decrease runs of optimizer. I used to get this error with 5000, but after changing to 1000 it deployed successfully
Hi @rickcain @0xbeedao. See issue in gnosis pm repo explaining this. This error is something that the TxPermissionContract is not liking about the transaction. Basically, there is a contract that determines whether a transaction has permission to execute or not. See the relevant code here.