Files
smom-dbis-138/script/DeployOfficialUSDC138.s.sol

37 lines
1.2 KiB
Solidity
Raw Normal View History

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
import {Script, console} from "forge-std/Script.sol";
import {OfficialStableMirrorToken} from "../contracts/tokens/OfficialStableMirrorToken.sol";
/**
* @title DeployOfficialUSDC138
* @notice Deploy the local Chain 138 quote-side USDC mirror used by DODO PMM pools.
*/
contract DeployOfficialUSDC138 is Script {
function run() external {
uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY");
address deployer = vm.addr(deployerPrivateKey);
address owner = vm.envOr("OFFICIAL_USDC_138_OWNER", deployer);
uint256 initialSupply = vm.envOr("OFFICIAL_USDC_138_INITIAL_SUPPLY", uint256(0));
console.log("Deploying Official USDC (Chain 138) with deployer:", vm.toString(deployer));
console.log("Owner:", vm.toString(owner));
console.log("Initial supply:", initialSupply);
vm.startBroadcast(deployerPrivateKey);
OfficialStableMirrorToken token = new OfficialStableMirrorToken(
"USD Coin (Chain 138)",
"USDC",
6,
owner,
initialSupply
);
console.log("Official USDC (Chain 138) deployed at:", vm.toString(address(token)));
vm.stopBroadcast();
}
}