This commit is contained in:
Julian 2024-04-26 15:09:16 -03:00 committed by GitHub
commit 89acb2de8c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 180 additions and 1 deletions

View File

@ -181,6 +181,13 @@
} }
} }
}, },
"blast": {
"network": "BLAST_NETWORK",
"rpcs": {
"__name": "BLAST_RPCS",
"__format": "json"
}
},
"polygon-sepolia": { "polygon-sepolia": {
"network": "POLYGON_SEPOLIA_NETWORK", "network": "POLYGON_SEPOLIA_NETWORK",
"rpcs": { "rpcs": {

View File

@ -175,6 +175,13 @@
], ],
"timeout": 10000 "timeout": 10000
}, },
"blast": {
"name": "blast",
"network": "testnet",
"chainId": 36,
"rpcs": ["https://blast-sepolia.drpc.org", "https://sepolia.blast.io"],
"timeout": 10000
},
"ethereum-sepolia": { "ethereum-sepolia": {
"name": "ethereum-sepolia", "name": "ethereum-sepolia",
"network": "sepolia", "network": "sepolia",

View File

@ -130,6 +130,10 @@
"https://scroll-mainnet.chainstacklabs.com", "https://scroll-mainnet.chainstacklabs.com",
"https://scroll-mainnet.public.blastapi.io" "https://scroll-mainnet.public.blastapi.io"
] ]
},
"blast": {
"network": "mainnet",
"rpcs": ["https://rpc.ankr.com/"]
} }
} }
} }

View File

@ -63,6 +63,7 @@ const EVM_CHAINS = new Map([
["ethereum-holesky", "evmRepo"], ["ethereum-holesky", "evmRepo"],
["scroll", "evmRepo"], ["scroll", "evmRepo"],
["polygon-sepolia", "polygon-evmRepo"], ["polygon-sepolia", "polygon-evmRepo"],
["blast", "evmRepo"],
]); ]);
const POOL_STRATEGY = "weighted"; const POOL_STRATEGY = "weighted";

View File

@ -104,6 +104,9 @@ describe("RepositoriesBuilder", () => {
expect(repos.getEvmBlockRepository("polygon-sepolia")).toBeInstanceOf( expect(repos.getEvmBlockRepository("polygon-sepolia")).toBeInstanceOf(
RateLimitedEvmJsonRPCBlockRepository RateLimitedEvmJsonRPCBlockRepository
); );
expect(repos.getEvmBlockRepository("blast")).toBeInstanceOf(
RateLimitedEvmJsonRPCBlockRepository
);
expect(repos.getAptosRepository()).toBeInstanceOf(RateLimitedAptosJsonRPCBlockRepository); expect(repos.getAptosRepository()).toBeInstanceOf(RateLimitedAptosJsonRPCBlockRepository);
expect(repos.getMetadataRepository()).toBeInstanceOf(FileMetadataRepository); expect(repos.getMetadataRepository()).toBeInstanceOf(FileMetadataRepository);
expect(repos.getSnsEventRepository()).toBeInstanceOf(SnsEventRepository); expect(repos.getSnsEventRepository()).toBeInstanceOf(SnsEventRepository);

View File

@ -115,6 +115,13 @@ export const configMock = (): Config => {
rpcs: ["http://localhost"], rpcs: ["http://localhost"],
timeout: 10000, timeout: 10000,
}, },
blast: {
name: "blast",
network: "testnet",
chainId: 36,
rpcs: ["http://localhost"],
timeout: 10000,
},
"ethereum-sepolia": { "ethereum-sepolia": {
name: "ethereum-sepolia", name: "ethereum-sepolia",
network: "sepolia", network: "sepolia",

View File

@ -334,6 +334,36 @@ data:
} }
} }
] ]
},
{
"id": "poll-log-message-published-blast",
"chain": "blast",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x473e002D7add6fB67a4964F13bFd61280Ca46886"],
"chain": "blast",
"chainId": 36
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0x473e002D7add6fB67a4964F13bFd61280Ca46886"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
},
"metricName": "process_source_event"
}
}
]
} }
] ]
mainnet-jobs.json: |- mainnet-jobs.json: |-
@ -576,6 +606,36 @@ data:
} }
} }
] ]
},
{
"id": "poll-log-message-published-blast",
"chain": "blast",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": [""],
"chain": "blast",
"chainId": 36
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [""],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
},
"metricName": "process_source_event"
}
}
]
} }
] ]
--- ---
@ -656,6 +716,10 @@ spec:
- name: ARBITRUM_SEPOLIA_RPCS - name: ARBITRUM_SEPOLIA_RPCS
value: '{{ .ARBITRUM_SEPOLIA_RPCS }}' value: '{{ .ARBITRUM_SEPOLIA_RPCS }}'
{{ end }} {{ end }}
{{ if .BLAST_RPCS }}
- name: BLAST_RPCS
value: '{{ .BLAST_RPCS }}'
{{ end }}
image: {{ .IMAGE_NAME }} image: {{ .IMAGE_NAME }}
resources: resources:
limits: limits:

View File

@ -286,6 +286,46 @@ data:
} }
} }
] ]
},
{
"id": "poll-redeemed-transactions-blast",
"chain": "blast",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": [
"0x430855B4D43b8AEB9D2B9869B74d58dda79C0dB2"
],
"chain": "blast",
"chainId": 36,
"topics": [
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmRedeemedTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": [
"0x430855B4D43b8AEB9D2B9869B74d58dda79C0dB2"
],
"topics": [
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
]
},
"metricName": "process_vaa_event"
}
}
]
} }
] ]
mainnet-jobs.json: |- mainnet-jobs.json: |-
@ -476,7 +516,7 @@ data:
"action": "PollEvm", "action": "PollEvm",
"records": "GetEvmTransactions", "records": "GetEvmTransactions",
"config": { "config": {
"blockBatchSize": 10, "blockBatchSize": 100,
"commitment": "latest", "commitment": "latest",
"interval": 5000, "interval": 5000,
"addresses": [ "addresses": [
@ -514,6 +554,48 @@ data:
} }
} }
] ]
},
{
"id": "poll-redeemed-transactions-blast",
"chain": "blast",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": [
""
],
"chain": "blast",
"chainId": 36,
"topics": [
"0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169",
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmRedeemedTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": [
""
],
"topics": [
"0xcaf280c8cfeba144da67230d9b009c8f868a75bac9a528fa0474be1ba317c169",
"0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
]
},
"metricName": "process_vaa_event"
}
}
]
} }
] ]
--- ---
@ -614,6 +696,10 @@ spec:
- name: MOONBEAM_RPCS - name: MOONBEAM_RPCS
value: '{{ .MOONBEAM_RPCS }}' value: '{{ .MOONBEAM_RPCS }}'
{{ end }} {{ end }}
{{ if .BLAST_RPCS }}
- name: BLAST_RPCS
value: '{{ .BLAST_RPCS }}'
{{ end }}
image: {{ .IMAGE_NAME }} image: {{ .IMAGE_NAME }}
resources: resources:
limits: limits: