wormhole-explorer/deploy/blockchain-watcher/workers/ethereum.yaml

572 lines
18 KiB
YAML
Raw Normal View History

---
apiVersion: v1
kind: Service
metadata:
name: {{ .NAME }}-eth
namespace: {{ .NAMESPACE }}
labels:
app: {{ .NAME }}-eth
spec:
selector:
app: {{ .NAME }}-eth
ports:
- port: {{ .PORT }}
targetPort: {{ .PORT }}
name: {{ .NAME }}-eth
protocol: TCP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: blockchain-watcher-eth-pvc
namespace: {{ .NAMESPACE }}
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Mi
storageClassName: gp2
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .NAME }}-eth-jobs
namespace: {{ .NAMESPACE }}
data:
testnet-jobs.json: |-
[
{
"id": "poll-log-message-published-ethereum",
"chain": "ethereum",
"source": {
"action": "PollEvm",
"config": {
"fromBlock": "10012499",
"blockBatchSize": 100,
"commitment": "latest",
"interval": 15000,
"addresses": ["0x706abc4E45D419950511e474C7B9Ed348A4a716c"],
"chain": "ethereum",
"chainId": 2
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0x706abc4E45D419950511e474C7B9Ed348A4a716c"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
},
{
"id": "poll-log-message-published-karura",
"chain": "karura",
"source": {
"action": "PollEvm",
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 15000,
"addresses": [
"0xE4eacc10990ba3308DdCC72d985f2a27D20c7d03"
],
"chain": "karura",
"chainId": 11
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0xE4eacc10990ba3308DdCC72d985f2a27D20c7d03"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-fantom",
"chain": "fantom",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 15000,
"addresses": [
"0x1BB3B4119b7BA9dfad76B0545fb3F531383c3bB7"
],
"chain": "fantom",
"chainId": 10
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0x1BB3B4119b7BA9dfad76B0545fb3F531383c3bB7"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-acala",
"chain": "acala",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 15000,
"addresses": [
"0x4377B49d559c0a9466477195C6AdC3D433e265c0"
],
"chain": "acala",
"chainId": 12
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0x4377B49d559c0a9466477195C6AdC3D433e265c0"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-avalanche",
"chain": "avalanche",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 15000,
"addresses": [
"0x7bbcE28e64B3F8b84d876Ab298393c38ad7aac4C"
],
"chain": "avalanche",
"chainId": 6,
"topics": []
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0x7bbcE28e64B3F8b84d876Ab298393c38ad7aac4C"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-bsc",
"chain": "bsc",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 15000,
"addresses": ["0x68605AD7b15c732a30b1BbC62BE8F2A509D74b4D"],
"chain": "bsc",
"chainId": 4
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0x68605AD7b15c732a30b1BbC62BE8F2A509D74b4D"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
},
{
"id": "poll-log-message-published-moonbeam",
"chain": "moonbeam",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 15000,
"addresses": ["0xa5B7D85a8f27dd7907dc8FdC21FA5657D5E2F901"],
"chain": "moonbeam",
"chainId": 16
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0xa5B7D85a8f27dd7907dc8FdC21FA5657D5E2F901"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
}
]
mainnet-jobs.json: |-
[
{
"id": "poll-log-message-published-ethereum",
"chain": "ethereum",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 15000,
"addresses": ["0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B", "0x27428dd2d3dd32a4d7f7c497eaaa23130d894911", "0x3ee18b2214aff97000d974cf647e7c347e8fa585"],
"chain": "ethereum",
"chainId": 2
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
},
{
"id": "poll-log-message-published-karura",
"chain": "karura",
"source": {
"action": "PollEvm",
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 5000,
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
"addresses": [
"0xa321448d90d4e5b0A732867c18eA198e75CAC48E"
],
"chain": "karura",
"chainId": 11
[Blockchain Watcher] Feature 798/enable evm karura chain (#831) * adding gen-relayer watcher code to branch * folder rename * adding some new abstract types for processor redesign * added first cut of new process manager logic * large refactoring to environment configuration * Add basic default config * prettier run * modifying event handler interface * abstract handler typing changes * Blockchain watcher: adding domain and infra layers (#786) * reorg domain-infra * watch evm blocks action * adding evm log parser * wider prettier * renaming watch action * adding doc * persist latest metadata * gh action for blockchain-watcher * adding log-message-published mapper * deps: remove peers and nodemon * adding handler for LogMessagePublished * added parser for log message published --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> * Blockchain Watcher: ethereum -> sns implementation (#790) * evm block repo implementation * adding sns publisher * adding external config and initial runner * fix: start from latest if no fromBlock configured * feat: add dryRun option * fix: handler filtering and eth_getLogs filter payload * local e2e * actual sns arns for testnet * smaller docker image * deployment changes * [Blockchain Watcher] Apply missing formatting for log message published (#791) * Apply missing formatting for log message published * keep extracting * emitterAddress -> emitter * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * [Blockchain watcher] Adding light observability (#793) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * better error logs * wait when no block available * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * group actions per platform * [Blockchain Watcher] Add StartJob action + rate limit handling (#799) * using configured default winston logger * wait for new block * adding basic metrics * staging mainnet config * send hexa block number * simpler log format * group entities in different files * grouping watchers * adding 429 handling http client * abstracting polling iteration * Load jobs dinamically * changing deployment strategy to jobs per pod * adding poll solana txs action * adding solana repo implementation * solana: mapping to logmsgpublished * fixing solana mapper test * updating readme * adding some metrics * adding solana worker * adding finality param to get solana block * minor changes - using confirmed for solana log extraction * updating version * add solana env var * [Blockchain Watcher] Feature-813/fix-coverage-report (#815) * Fix coverage report * Run prettier * Rollback global coverage value * Set global coverage value to 55 * Add github PR template * Run prettier * Rename github template file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * private solana urls as secret * adding prod cfg files * Change repository name and cretae error foulder (#819) * Change repository name and cretae error foulder * Rename SolanaFailure file * Rename SolanaFailure file --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * passing node_options for solana * adding missing envs templates * cru * ratelimited solana client + increase coverage * [Blockchain Watcher] Feature 817/add hexagonal prefix (#824) * Put hexadecimal prefix * Create id variable * Add error log * Add error log * Remove bigint in getBlock params --------- Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local> * fix never ending solana jobs * adding job counter metric * solana: add retry handling for 429s * cleanup * remove duplicated tests * [Blockchain watcher] feature-798/enable-evm-karura-chain * [Blockchain watcher] feature-798/enable-evm-karura-chain * Add karura job in mainnet * Mapped karura addresses * Improve address tesnet * Delete from block * Resolve comment in PR, mapped chainId into EvmLog entity * Revert address change * Mapped mainet address * Create chains constants * Imporve config mock * Resolve comment * Mapped chainId into repository * Run prettier * Change commitment status for karura * Run prettier --------- Co-authored-by: chase-45 <chasemoran45@gmail.com> Co-authored-by: matias martinez <matias@xlabs.xyz> Co-authored-by: Matías Martínez <131624652+mat1asm@users.noreply.github.com> Co-authored-by: Julian Merlo <julianmerlo@MacBook-Pro-de-Julian.local>
2023-11-30 07:43:37 -08:00
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0xa321448d90d4e5b0A732867c18eA198e75CAC48E"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-fantom",
"chain": "fantom",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": [
"0x126783A6Cb203a3E35344528B26ca3a0489a1485"
],
"chain": "fantom",
"chainId": 10
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0x126783A6Cb203a3E35344528B26ca3a0489a1485"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-acala",
"chain": "acala",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 5000,
"addresses": [
"0xa321448d90d4e5b0A732867c18eA198e75CAC48E"
],
"chain": "acala",
"chainId": 12
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0xa321448d90d4e5b0A732867c18eA198e75CAC48E"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-avalanche",
"chain": "avalanche",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "finalized",
"interval": 5000,
"addresses": [
"0x54a8e5f9c4CbA08F9943965859F6c34eAF03E26c"
],
"chain": "avalanche",
"chainId": 6,
"topics": []
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": [
"0x54a8e5f9c4CbA08F9943965859F6c34eAF03E26c"
],
"topics": [
"0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"
]
}
}
}
]
},
{
"id": "poll-log-message-published-bsc",
"chain": "bsc",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B"],
"chain": "bsc",
"chainId": 4
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0x98f3c9e6E3fAce36bAAd05FE09d375Ef1464288B"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
},
{
"id": "poll-log-message-published-moonbeam",
"chain": "moonbeam",
"source": {
"action": "PollEvm",
"config": {
"blockBatchSize": 100,
"commitment": "latest",
"interval": 5000,
"addresses": ["0xC8e2b0cD52Cf01b0Ce87d389Daa3d414d4cE29f3"],
"chain": "moonbeam",
"chainId": 16
}
},
"handlers": [
{
"action": "HandleEvmLogs",
"target": "sns",
"mapper": "evmLogMessagePublishedMapper",
"config": {
"abi": "event LogMessagePublished(address indexed sender, uint64 sequence, uint32 nonce, bytes payload, uint8 consistencyLevel)",
"filter": {
"addresses": ["0xC8e2b0cD52Cf01b0Ce87d389Daa3d414d4cE29f3"],
"topics": ["0x6eb224fb001ed210e379b335e35efe88672a8ce935d981a6896b27ffdf52a3b2"]
}
}
}
]
}
]
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .NAME }}-eth
namespace: {{ .NAMESPACE }}
spec:
replicas: 1
selector:
matchLabels:
app: {{ .NAME }}-eth
template:
metadata:
labels:
app: {{ .NAME }}-eth
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "{{ .PORT }}"
spec:
restartPolicy: Always
terminationGracePeriodSeconds: 30
serviceAccountName: event-watcher
containers:
- name: {{ .NAME }}
image: {{ .IMAGE_NAME }}
env:
- name: NODE_ENV
value: {{ .NODE_ENV }}
- name: PORT
value: "{{ .PORT }}"
- name: LOG_LEVEL
value: {{ .LOG_LEVEL }}
- name: BLOCKCHAIN_ENV
value: {{ .BLOCKCHAIN_ENV }}
- name: DRY_RUN_ENABLED
value: "{{ .DRY_RUN_ENABLED }}"
- name: SNS_TOPIC_ARN
value: {{ .SNS_TOPIC_ARN }}
- name: SNS_REGION
value: {{ .SNS_REGION }}
- name: JOBS_DIR
value: /home/node/app/jobs
{{ if .FANTOM_RPCS }}
- name: FANTOM_RPCS
value: '{{ .FANTOM_RPCS }}'
{{ end }}
{{ if .ETHEREUM_RPCS }}
- name: ETHEREUM_RPCS
value: '{{ .ETHEREUM_RPCS }}'
{{ end }}
resources:
limits:
memory: {{ .RESOURCES_LIMITS_MEMORY }}
cpu: {{ .RESOURCES_LIMITS_CPU }}
requests:
memory: {{ .RESOURCES_REQUESTS_MEMORY }}
cpu: {{ .RESOURCES_REQUESTS_CPU }}
volumeMounts:
- name: metadata-volume
mountPath: /home/node/app/metadata-repo
- name: jobs-volume
mountPath: /home/node/app/jobs
volumes:
- name: metadata-volume
persistentVolumeClaim:
claimName: blockchain-watcher-eth-pvc
- name: jobs-volume
configMap:
name: {{ .NAME }}-eth-jobs
items:
- key: {{ .BLOCKCHAIN_ENV }}-jobs.json
path: jobs.json