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

499 lines
18 KiB
YAML

---
apiVersion: v1
kind: Service
metadata:
name: {{ .NAME }}-eth-2
namespace: {{ .NAMESPACE }}
labels:
app: {{ .NAME }}-eth-2
spec:
selector:
app: {{ .NAME }}-eth-2
ports:
- port: {{ .PORT }}
targetPort: {{ .PORT }}
name: {{ .NAME }}-eth-2
protocol: TCP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: blockchain-watcher-eth-2-pvc
namespace: {{ .NAMESPACE }}
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Mi
storageClassName: gp2
---
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .NAME }}-eth-2-jobs
namespace: {{ .NAMESPACE }}
data:
testnet-jobs.json: |-
[
{
"id": "poll-redeemed-transactions-optimism",
"chain": "optimism",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"chain": "optimism",
"chainId": 24,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-base",
"chain": "base",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "finalized",
"interval": 5000,
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"chain": "base",
"chainId": 30,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-arbitrum",
"chain": "arbitrum",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 30000,
"addresses": ["0xbf683d541e11320418ca78ec13309938e6c5922f", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"chain": "arbitrum",
"chainId": 23,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0xbf683d541e11320418ca78ec13309938e6c5922f", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-polygon",
"chain": "polygon",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"chain": "polygon",
"chainId": 5,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69FaE7e7Af841e44E1A1c30Af640739378bb2", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-avalanche",
"chain": "avalanche",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "finalized",
"interval": 5000,
"addresses": ["0x774a70bbd03327c21460b60f25b677d9e46ab458", "0xeb08f243e5d3fcff26a9e38ae5520a669f4019d0"],
"chain": "avalanche",
"chainId": 6,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x774a70bbd03327c21460b60f25b677d9e46ab458", "0xeb08f243e5d3fcff26a9e38ae5520a669f4019d0"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-ethereum",
"chain": "ethereum",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 15000,
"addresses": ["0x17da1ff5386d044c63f00747b5b8ad1e3806448d", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"chain": "ethereum",
"chainId": 2,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x17da1ff5386d044c63f00747b5b8ad1e3806448d", "0x9f3B8679c73C2Fef8b59B4f3444d4e156fb70AA5"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
}
]
mainnet-jobs.json: |-
[
{
"id": "poll-redeemed-transactions-optimism",
"chain": "optimism",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f"],
"chain": "optimism",
"chainId": 24,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x2B4069517957735bE00ceE0fadAE88a26365528f"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-base",
"chain": "base",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "finalized",
"interval": 5000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962"],
"chain": "base",
"chainId": 30,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x1682Ae6375C4E4A97e4B583BC394c861A46D8962"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-arbitrum",
"chain": "arbitrum",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 30000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A"],
"chain": "arbitrum",
"chainId": 23,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x19330d10D9Cc8751218eaf51E8885D058642E08A"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-polygon",
"chain": "polygon",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 5000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE"],
"chain": "polygon",
"chainId": 5,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x9daF8c91AEFAE50b9c0E69629D3F6Ca40cA3B3FE"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-avalanche",
"chain": "avalanche",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "finalized",
"interval": 5000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982"],
"chain": "avalanche",
"chainId": 6,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0x6b25532e1060ce10cc3b0a99e5683b91bfde6982"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
},
{
"id": "poll-redeemed-transactions-ethereum",
"chain": "ethereum",
"source": {
"action": "PollEvm",
"records": "GetEvmTransactions",
"config": {
"blockBatchSize": 10,
"commitment": "latest",
"interval": 15000,
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155"],
"chain": "ethereum",
"chainId": 2,
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
},
"handlers": [
{
"action": "HandleEvmTransactions",
"target": "sns",
"mapper": "evmTransactionFoundMapper",
"config": {
"abi": "",
"filter": {
"addresses": ["0x4cb69fae7e7af841e44e1a1c30af640739378bb2", "0xbd3fa81b58ba92a82136038b25adec7066af3155"],
"topics": ["0x1b2a7ff080b8cb6ff436ce0372e399692bbfb6d4ae5766fd8d58a7b8cc6142e6", "0xf02867db6908ee5f81fd178573ae9385837f0a0a72553f8c08306759a7e0f00e"]
}
}
}
]
}
]
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .NAME }}-eth-2
namespace: {{ .NAMESPACE }}
spec:
replicas: 1
selector:
matchLabels:
app: {{ .NAME }}-eth-2
template:
metadata:
labels:
app: {{ .NAME }}-eth-2
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 .BASE_RPCS }}
- name: BASE_RPCS
value: '{{ .BASE_RPCS }}'
{{ end }}
{{ if .OPTIMISM_RPCS }}
- name: OPTIMISM_RPCS
value: '{{ .OPTIMISM_RPCS }}'
{{ end }}
{{ if .ARBITRUM_RPCS }}
- name: ARBITRUM_RPCS
value: '{{ .ARBITRUM_RPCS }}'
{{ end }}
{{ if .POLYGON_RPCS }}
- name: POLYGON_RPCS
value: '{{ .POLYGON_RPCS }}'
{{ end }}
{{ if .AVALANCHE_RPCS }}
- name: AVALANCHE_RPCS
value: '{{ .AVALANCHE_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-2-pvc
- name: jobs-volume
configMap:
name: {{ .NAME }}-eth-2-jobs
items:
- key: {{ .BLOCKCHAIN_ENV }}-jobs.json
path: jobs.json