Commit 626058c1 authored by Matthew Slipper's avatar Matthew Slipper Committed by GitHub

Merge pull request #6685 from ethereum-optimism/feat/modularize-deploy-script

contracts-bedrock: modularize deploy script
parents 3b9c9cf5 d4f871e5
...@@ -64,31 +64,8 @@ contract Deploy is Deployer { ...@@ -64,31 +64,8 @@ contract Deploy is Deployer {
function run() public { function run() public {
console.log("Deploying L1 system"); console.log("Deploying L1 system");
deployAddressManager(); deployProxies();
deployProxyAdmin(); deployImplementations();
deployOptimismPortalProxy();
deployL2OutputOracleProxy();
deploySystemConfigProxy();
deployL1StandardBridgeProxy();
deployL1CrossDomainMessengerProxy();
deployOptimismMintableERC20FactoryProxy();
deployL1ERC721BridgeProxy();
deployDisputeGameFactoryProxy();
deployOptimismPortal();
deployL1CrossDomainMessenger();
deployL2OutputOracle();
deployOptimismMintableERC20Factory();
deploySystemConfig();
deployL1StandardBridge();
deployL1ERC721Bridge();
deployDisputeGameFactory();
deployBlockOracle();
deployPreimageOracle();
deployMips();
transferAddressManagerOwnership();
initializeDisputeGameFactory(); initializeDisputeGameFactory();
initializeSystemConfig(); initializeSystemConfig();
...@@ -120,6 +97,38 @@ contract Deploy is Deployer { ...@@ -120,6 +97,38 @@ contract Deploy is Deployer {
} }
} }
/// @notice Deploy all of the proxies
function deployProxies() public {
deployAddressManager();
deployProxyAdmin();
deployOptimismPortalProxy();
deployL2OutputOracleProxy();
deploySystemConfigProxy();
deployL1StandardBridgeProxy();
deployL1CrossDomainMessengerProxy();
deployOptimismMintableERC20FactoryProxy();
deployL1ERC721BridgeProxy();
deployDisputeGameFactoryProxy();
transferAddressManagerOwnership();
}
/// @notice Deploy all of the implementations
function deployImplementations() public {
deployOptimismPortal();
deployL1CrossDomainMessenger();
deployL2OutputOracle();
deployOptimismMintableERC20Factory();
deploySystemConfig();
deployL1StandardBridge();
deployL1ERC721Bridge();
deployDisputeGameFactory();
deployBlockOracle();
deployPreimageOracle();
deployMips();
}
/// @notice Deploy the AddressManager /// @notice Deploy the AddressManager
function deployAddressManager() public broadcast returns (address addr_) { function deployAddressManager() public broadcast returns (address addr_) {
AddressManager manager = new AddressManager(); AddressManager manager = new AddressManager();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment