Skip to content

Commit 18dc5d5

Browse files
authored
Merge pull request #239 from SocketDotTech/rescue-fixes
Rescue script fixes
2 parents 6b64ae0 + 3ac6616 commit 18dc5d5

File tree

1 file changed

+42
-39
lines changed

1 file changed

+42
-39
lines changed

scripts/deploy/scripts/rescueFunds.ts

+42-39
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,9 @@ const createContractAddrArray = (
5454
addresses.push(chainAddresses.TransmitManager);
5555
addresses.push(chainAddresses.FastSwitchboard);
5656
addresses.push(chainAddresses.OptimisticSwitchboard);
57-
addresses.push(chainAddresses.SocketBatcher);
5857

58+
if (chainAddresses.SocketBatcher)
59+
addresses.push(chainAddresses.SocketBatcher);
5960
if (chainAddresses.ExecutionManager)
6061
addresses.push(chainAddresses.ExecutionManager);
6162
if (chainAddresses.OpenExecutionManager)
@@ -81,41 +82,42 @@ const createContractAddrArray = (
8182
};
8283

8384
export const main = async () => {
84-
try {
85-
const addresses: DeploymentAddresses = await getAllAddresses(mode);
86-
const activeChainSlugs = Object.keys(addresses);
87-
88-
// parallelize chains
89-
await Promise.all(
90-
activeChainSlugs.map(async (chainSlug) => {
91-
let chainAddresses: ChainSocketAddresses = addresses[chainSlug];
92-
if (!chainAddresses) {
93-
console.log("addresses not found for ", chainSlug, chainAddresses);
94-
return;
95-
}
96-
97-
const providerInstance = getProviderFromChainName(
98-
networkToChainSlug[chainSlug]
99-
);
100-
const signer: Wallet = new ethers.Wallet(
101-
process.env.SOCKET_SIGNER_KEY as string,
102-
providerInstance
85+
const addresses: DeploymentAddresses = await getAllAddresses(mode);
86+
const activeChainSlugs = Object.keys(addresses);
87+
88+
// parallelize chains
89+
await Promise.all(
90+
activeChainSlugs.map(async (chainSlug) => {
91+
let chainAddresses: ChainSocketAddresses = addresses[chainSlug];
92+
if (!chainAddresses) {
93+
console.log("addresses not found for ", chainSlug, chainAddresses);
94+
return;
95+
}
96+
97+
const providerInstance = getProviderFromChainName(
98+
networkToChainSlug[chainSlug]
99+
);
100+
const signer: Wallet = new ethers.Wallet(
101+
process.env.SOCKET_SIGNER_KEY as string,
102+
providerInstance
103+
);
104+
105+
const contractAddr = createContractAddrArray(chainAddresses);
106+
for (let index = 0; index < contractAddr.length; index++) {
107+
const amount = await providerInstance.getBalance(contractAddr[index]);
108+
console.log(
109+
`balance of ${contractAddr[index]} on ${chainSlug} : ${amount}`
103110
);
104111

105-
const contractAddr = createContractAddrArray(chainAddresses);
106-
107-
for (let index = 0; index < contractAddr.length; index++) {
108-
const amount = await providerInstance.getBalance(contractAddr[index]);
109-
console.log(`balance of ${contractAddr[index]} : ${amount}`);
110-
111-
if (amount.toString() === "0") continue;
112+
if (amount.toString() === "0") continue;
112113

113-
const contractInstance: Contract = new ethers.Contract(
114-
contractAddr[index],
115-
rescueFundsABI,
116-
signer
117-
);
114+
const contractInstance: Contract = new ethers.Contract(
115+
contractAddr[index],
116+
rescueFundsABI,
117+
signer
118+
);
118119

120+
try {
119121
const tx = await contractInstance.rescueFunds(
120122
ETH_ADDRESS,
121123
signer.address,
@@ -124,16 +126,17 @@ export const main = async () => {
124126
);
125127

126128
console.log(
127-
`Rescuing funds ${amount} from ${contractAddr[index]} on chain ${chainSlug}: ${tx.hash}`
129+
`Rescuing ${amount} from ${contractAddr[index]} on ${chainSlug}: ${tx.hash}`
128130
);
129131
await tx.wait();
132+
} catch (e) {
133+
console.log(
134+
`Error while rescuing ${amount} from ${contractAddr[index]} on ${chainSlug}`
135+
);
130136
}
131-
})
132-
);
133-
} catch (error) {
134-
console.log("Error while rescuing funds", error);
135-
throw error;
136-
}
137+
}
138+
})
139+
);
137140
};
138141

139142
main()

0 commit comments

Comments
 (0)