Skip to content

Commit

Permalink
deploy SafeProxy
Browse files Browse the repository at this point in the history
  • Loading branch information
silvesterdrago committed Oct 9, 2023
1 parent 017f006 commit 8a33451
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 8 deletions.
1 change: 1 addition & 0 deletions remappings.txt
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
@safe-global=lib/safe-global/contracts
@openzeppelin=lib/openzeppelin/contracts
@safe-contracts=lib/safe-contracts/contracts
41 changes: 33 additions & 8 deletions script/CreateSafeAccount.s.sol
Original file line number Diff line number Diff line change
@@ -1,19 +1,44 @@
pragma solidity ^0.8.13;

import {Script, console2} from "forge-std/Script.sol";
import {Safe}
import {GnosisSafe} from "safe-contracts/GnosisSafe.sol";
import {GnosisSafeL2} from "safe-contracts/GnosisSafeL2.sol";
import {GnosisSafeProxyFactory} from "safe-contracts/proxies/GnosisSafeProxyFactory.sol";

address constant SINGLETON_ADDRESS = 0x3E5c63644E683549055b9Be8653de26E0B4CD36E;
address constant SAFE_PROXY_FACTORY = 0xa6B71E26C5e0845f74c812102Ca7114b6a896AB2;
address constant OWNER_ADDRESS = 0x01e36D100DbA45e62924307adf7c42c9c60d6214;

contract CreateSafeAccountScript is Script {
function setUp() public {
//createProxyWithNonce
/**
36372b07000000000000000000000000a6b71e26c5e0845f74c812102ca7114b6a896ab20000000
*/
}
function setUp() public {}

function run() public {
vm.broadcast();
uint256 deployerPrivateKey = 0x822d559d14930eed585892d4d0b7b58f1778a74c2c0548fa518ce9fd85a08754;
// address deployerAddr = vm.addr(deployerPrivateKey);

address[] memory owners = new address[](1);
owners[0] = OWNER_ADDRESS;


vm.startBroadcast(deployerPrivateKey);

bytes memory data = abi.encodeCall(
GnosisSafe.setup,
(owners,
1,
address(0),
"",
address(0),
address(0),
0,
payable(0))
);
GnosisSafeProxyFactory(SAFE_PROXY_FACTORY).createProxyWithNonce(
SINGLETON_ADDRESS,
data,
6661488
);

vm.stopBroadcast();
}
}

0 comments on commit 8a33451

Please sign in to comment.