Files
smom-dbis-138/script/DeployTransactionMirror.s.sol
2026-03-02 12:14:09 -08:00

28 lines
968 B
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;
import {Script, console} from "forge-std/Script.sol";
import {TransactionMirror} from "../contracts/mirror/TransactionMirror.sol";
contract DeployTransactionMirror is Script {
function run() external {
uint256 pk = vm.envUint("PRIVATE_KEY");
address deployer = vm.addr(pk);
// Use MIRROR_ADMIN from .env, or fall back to deployer address
address admin = vm.envOr("MIRROR_ADMIN", deployer);
// Optional: skip stuck nonce (e.g. NEXT_NONCE=13370 when 13369 is stuck)
uint64 nextNonce = uint64(vm.envOr("NEXT_NONCE", uint256(0)));
if (nextNonce > 0) {
vm.setNonce(deployer, nextNonce);
}
vm.startBroadcast(pk);
TransactionMirror mirror = new TransactionMirror(admin);
console.log("TransactionMirror deployed at:", address(mirror));
console.log("Admin:", admin);
vm.stopBroadcast();
}
}