mirror of
https://github.com/placeholder-soft/gifted-contracts-v2.git
synced 2026-01-12 22:28:55 +08:00
chore: TM
This commit is contained in:
@@ -12,3 +12,7 @@ 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_"
|
||||
|
||||
PLUME_TESTNET_RPC_URL="https://test-rpc.plumenetwork.xyz"
|
||||
|
||||
VERIFIER_URL=https://testnet-explorer.plumenetwork.xyz/api\?
|
||||
|
||||
@@ -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" }
|
||||
|
||||
@@ -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));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user