@@ -13,13 +13,14 @@ import {ITypeAndVersion} from "./../src/v0.8/shared/interfaces/ITypeAndVersion.s
1313struct Config {
1414 address GHO_TOKEN;
1515 address OWNER;
16+ address PROXY_ADMIN_OWNER;
1617 address RMN_PROXY;
1718 address ROUTER;
1819}
1920
2021/// @notice Deploys UpgradeableBurnMintTokenPool behind a transparent upgradable proxy for GHO.
2122/// Pre-requisite: add parameters to config.json, the with key as `chainId` of the target network.
22- /// Usage: FOUNDRY_PROFILE=ccip forge script DeployUpgradableBurnMintTokenPool --rpc-url <RPC_URL> --private-key <PRIVATE_KEY> --broadcast --verify --etherscan-api-key <ETHERSCAN_API_KEY>
23+ /// Usage: FOUNDRY_PROFILE=ccip forge script DeployUpgradableBurnMintTokenPool --rpc-url <RPC_URL> --private-key <PRIVATE_KEY> --broadcast --verify --etherscan-api-key <ETHERSCAN_API_KEY> --slow
2324contract DeployUpgradableBurnMintTokenPool is Script {
2425 function run () external {
2526 Config memory config = _parseConfig ();
@@ -35,7 +36,7 @@ contract DeployUpgradableBurnMintTokenPool is Script {
3536 address tokenPoolProxy = address (
3637 new TransparentUpgradeableProxy ({
3738 _logic: tokenPool,
38- initialOwner: config.OWNER ,
39+ initialOwner: config.PROXY_ADMIN_OWNER ,
3940 _data: abi.encodeCall (UpgradeableBurnMintTokenPool.initialize, (config.OWNER, ALLOW_LIST, config.ROUTER))
4041 })
4142 );
@@ -54,6 +55,7 @@ contract DeployUpgradableBurnMintTokenPool is Script {
5455
5556 function _validate (Config memory config ) internal view returns (Config memory ) {
5657 require (address (config.OWNER) != address (0 ), "InvalidOwner " );
58+ require (address (config.PROXY_ADMIN_OWNER) != address (0 ), "InvalidOwner " );
5759 require (_cmp (IERC20Metadata (config.GHO_TOKEN).name (), "Gho Token " ), "InvalidToken " );
5860 require (_cmp (IERC20Metadata (config.GHO_TOKEN).symbol (), "GHO " ), "InvalidToken " );
5961 require (_cmp (ITypeAndVersion (config.RMN_PROXY).typeAndVersion (), "ARMProxy 1.0.0 " ), "InvalidRmnProxy " );
@@ -63,7 +65,7 @@ contract DeployUpgradableBurnMintTokenPool is Script {
6365
6466 function _validate (address proxy , Config memory config ) internal view {
6567 require (_cmp (_getProxyAdmin (proxy).UPGRADE_INTERFACE_VERSION (), "5.0.0 " ), "InvalidProxyAdminVersion " );
66- require (_getProxyAdmin (proxy).owner () == config.OWNER , "InvalidProxyAdminOwner " );
68+ require (_getProxyAdmin (proxy).owner () == config.PROXY_ADMIN_OWNER , "InvalidProxyAdminOwner " );
6769 require (address (UpgradeableBurnMintTokenPool (proxy).getToken ()) == config.GHO_TOKEN, "InvalidToken " );
6870 require (UpgradeableBurnMintTokenPool (proxy).getRmnProxy () == config.RMN_PROXY, "InvalidRmnProxy " );
6971 require (UpgradeableBurnMintTokenPool (proxy).getRouter () == config.ROUTER, "InvalidRouter " );
0 commit comments