chore: TM

This commit is contained in:
keyp-dev
2024-10-21 15:39:27 +08:00
parent 2938502e7c
commit 4ef253b89a
3 changed files with 38 additions and 10 deletions

View File

@@ -11,4 +11,8 @@ SEPOLIA_ETHERSCAN_KEY="V7332TBR1DTRY9MTKK9MATAXXUTEHD7Y32"
ZORA_RPC_URL="https://rpc.zora.energy"
ZORA_SEPOLIA_RPC_URL="https://sepolia.rpc.zora.energy"
API_KEY_SIMPLE_HASH="placeholders_sk_"
API_KEY_SIMPLE_HASH="placeholders_sk_"
PLUME_TESTNET_RPC_URL="https://test-rpc.plumenetwork.xyz"
VERIFIER_URL=https://testnet-explorer.plumenetwork.xyz/api\?

View File

@@ -22,6 +22,8 @@ blast_sepolia = "${BLAST_SEPOLIA_RPC_URL}"
zora = "${ZORA_RPC_URL}"
zora_sepolia = "${ZORA_SEPOLIA_RPC_URL}"
plume_testnet = "${PLUME_TESTNET_RPC_URL}"
[etherscan]
arbitrum = { key = "${ARBITRUM_ETHERSCAN_KEY}", url = "https://api.arbiscan.io/api" }
arbitrum_sepolia = { key = "${ARBITRUM_ETHERSCAN_KEY}", url = "https://api-sepolia.arbiscan.io/api" }
@@ -36,3 +38,5 @@ blast_sepolia = { key = "${BLAST_SEPOLIA_ETHERSCAN_KEY}", url = "https://api.rou
zora_sepolia = { key = "verifyContract", url = "https://api.routescan.io/v2/network/testnet/evm/999999999/etherscan" }
zora = { key = "verifyContract", url = "https://api.routescan.io/v2/network/mainnet/evm/7777777/etherscan" }
plume_testnet = { key = "verifyContract", url = "https://testnet-explorer.plumenetwork.xyz/api" }

View File

@@ -11,14 +11,20 @@ contract DeployVault is Script {
address public manager;
address public gasRelayer =
address(0x08E3dBFCF164Df355E36B65B4e71D9E66483e083);
address public deployer =
address(0xB7d030F7c6406446e703E73B3d1dd8611A2D87b6);
function run() public {
deploy_contracts();
setup_roles();
update_unified_store();
// update_unified_store();
}
function deploy_contracts() internal {
vm.startBroadcast(getAddressFromConfig("deployer"));
// vm.startBroadcast(getAddressFromConfig("deployer"));
vm.startBroadcast(deployer);
nftVault = new NFTVault();
@@ -26,10 +32,14 @@ contract DeployVault is Script {
}
function setup_roles() internal {
vm.startBroadcast(getAddressFromConfig("deployer"));
// vm.startBroadcast(getAddressFromConfig("deployer"));
manager = getAddressFromConfig("manager");
nftVault.grantManagerRole(manager);
// manager = getAddressFromConfig("manager");
// nftVault.grantManagerRole(manager);
vm.startBroadcast(deployer);
nftVault.grantManagerRole(gasRelayer);
vm.stopBroadcast();
}
@@ -51,13 +61,23 @@ contract DeployVault is Script {
vm.stopBroadcast();
}
function getAddressFromConfig(string memory key) internal view returns (address) {
function getAddressFromConfig(
string memory key
) internal view returns (address) {
string memory env = vm.envString("DEPLOY_ENV");
require(bytes(env).length > 0, "DEPLOY_ENV must be set");
string memory root = vm.projectRoot();
string memory path = string.concat(root, "/config/", env, "_addresses.json");
string memory path = string.concat(
root,
"/config/",
env,
"_addresses.json"
);
string memory json = vm.readFile(path);
bytes memory addressBytes = vm.parseJson(json, string.concat(".", vm.toString(block.chainid), ".", key));
bytes memory addressBytes = vm.parseJson(
json,
string.concat(".", vm.toString(block.chainid), ".", key)
);
return abi.decode(addressBytes, (address));
}
}
}