Add boolean flag to enable sending L2 txs from watcher peer (#354)

This commit is contained in:
Nabarun Gogoi 2023-04-10 09:56:55 +05:30 committed by GitHub
parent 754db311f0
commit 7dada71fa3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 12 additions and 6 deletions

View File

@ -33,6 +33,7 @@
relayMultiaddr = ''
pubSubTopic = 'mobymask'
peerIdFile = ''
enableL2Txs = false
[server.p2p.peer.l2TxConfig]
privateKey = ''

View File

@ -4,6 +4,7 @@
import fs from 'fs';
import path from 'path';
import assert from 'assert';
import 'reflect-metadata';
import debug from 'debug';
import { ethers } from 'ethers';
@ -23,11 +24,12 @@ export const main = async (): Promise<any> => {
await serverCmd.initIndexer(Indexer);
let p2pMessageHandler = parseLibp2pMessage;
const { l2TxConfig } = serverCmd.config.server.p2p.peer;
const { enableL2Txs, l2TxsConfig } = serverCmd.config.server.p2p.peer;
if (l2TxConfig) {
const wallet = new ethers.Wallet(l2TxConfig.privateKey, serverCmd.ethProvider);
p2pMessageHandler = createMessageToL2Handler(wallet, l2TxConfig);
if (enableL2Txs) {
assert(l2TxsConfig);
const wallet = new ethers.Wallet(l2TxsConfig.privateKey, serverCmd.ethProvider);
p2pMessageHandler = createMessageToL2Handler(wallet, l2TxsConfig);
}
const typeDefs = fs.readFileSync(path.join(__dirname, 'schema.gql')).toString();

View File

@ -70,7 +70,7 @@ export interface RelayConfig {
}
// L2 tx config
interface L2TxConfig {
interface L2TxsConfig {
// Address of contract for which txs are sent
contractAddress: string;
@ -113,8 +113,11 @@ export interface PeerConfig {
// Participate in exchange of debug info over floodsub
enableDebugInfo?: boolean;
// Enable sending txs to L2 chain for every message received in P2P network
enableL2Txs: boolean;
// Config for sending txs to L2
l2TxConfig?: L2TxConfig;
l2TxsConfig?: L2TxsConfig;
}
// P2P config