[tx-tracker] Add support for Terra, Injective, Acala and Karura (#502)

### Description

Tracking issue: https://github.com/wormhole-foundation/wormhole-explorer/issues/499

This pull request adds support in the `tx-tracker` service for the blockchains Terra, Injective, Acala and Karura.

Also, deployment settings were updated with reasonable defaults.
This commit is contained in:
agodnic 2023-07-05 14:53:00 -03:00 committed by GitHub
parent 88089a6a0e
commit 9e4aa45305
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 264 additions and 131 deletions

View File

@ -7,53 +7,67 @@ RESOURCES_LIMITS_CPU=500m
RESOURCES_REQUESTS_MEMORY=128Mi
RESOURCES_REQUESTS_CPU=250m
ALGORAND_BASE_URL=
ALGORAND_REQUESTS_PER_MINUTE=2
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
ACALA_REQUESTS_PER_MINUTE=1
APTOS_BASE_URL=
ALGORAND_BASE_URL=https://mainnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=1
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=2
ARBITRUM_BASE_URL=
ARBITRUM_REQUESTS_PER_MINUTE=2
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
ARBITRUM_REQUESTS_PER_MINUTE=1
AVALANCHE_BASE_URL=
AVALANCHE_REQUESTS_PER_MINUTE=2
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
AVALANCHE_REQUESTS_PER_MINUTE=1
BSC_BASE_URL=
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
BSC_REQUESTS_PER_MINUTE=2
CELO_BASE_URL=
CELO_REQUESTS_PER_MINUTE=2
CELO_BASE_URL=https://forno.celo.org
CELO_REQUESTS_PER_MINUTE=1
ETHEREUM_BASE_URL=
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
ETHEREUM_REQUESTS_PER_MINUTE=2
FANTOM_BASE_URL=
FANTOM_REQUESTS_PER_MINUTE=2
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
FANTOM_REQUESTS_PER_MINUTE=1
KLAYTN_BASE_URL=
KLAYTN_REQUESTS_PER_MINUTE=2
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
# We're temporally using a different one.
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
INJECTIVE_REQUESTS_PER_MINUTE=1
MOONBEAM_BASE_URL=
MOONBEAM_REQUESTS_PER_MINUTE=2
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
KARURA_REQUESTS_PER_MINUTE=1
OASIS_BASE_URL=
OASIS_REQUESTS_PER_MINUTE=2
KLAYTN_BASE_URL=https://klaytn-mainnet-rpc.allthatnode.com:8551
KLAYTN_REQUESTS_PER_MINUTE=1
OPTIMISM_BASE_URL=
OPTIMISM_REQUESTS_PER_MINUTE=2
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
MOONBEAM_REQUESTS_PER_MINUTE=1
POLYGON_BASE_URL=
OASIS_BASE_URL=https://emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=1
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
OPTIMISM_REQUESTS_PER_MINUTE=1
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
POLYGON_REQUESTS_PER_MINUTE=2
SOLANA_BASE_URL=
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
SOLANA_REQUESTS_PER_MINUTE=2
SUI_BASE_URL=
SUI_REQUESTS_PER_MINUTE=2
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=1
TERRA2_BASE_URL=
TERRA2_REQUESTS_PER_MINUTE=2
TERRA_BASE_URL=https://columbus-fcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=2
XPLA_BASE_URL=
XPLA_REQUESTS_PER_MINUTE=2
TERRA2_BASE_URL=https://phoenix-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=1
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
XPLA_REQUESTS_PER_MINUTE=1

View File

@ -11,53 +11,67 @@ STRATEGY_NAME=time_range
STRATEGY_TIMESTAMP_AFTER=2023-01-01T00:00:00.000Z
STRATEGY_TIMESTAMP_BEFORE=2023-04-01T00:00:00.000Z
ALGORAND_BASE_URL=
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
ACALA_REQUESTS_PER_MINUTE=1
ALGORAND_BASE_URL=https://mainnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=1
APTOS_BASE_URL=
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=1
ARBITRUM_BASE_URL=
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
ARBITRUM_REQUESTS_PER_MINUTE=1
AVALANCHE_BASE_URL=
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
AVALANCHE_REQUESTS_PER_MINUTE=1
BSC_BASE_URL=
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
BSC_REQUESTS_PER_MINUTE=1
CELO_BASE_URL=
CELO_BASE_URL=https://forno.celo.org
CELO_REQUESTS_PER_MINUTE=1
ETHEREUM_BASE_URL=
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
ETHEREUM_REQUESTS_PER_MINUTE=1
FANTOM_BASE_URL=
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
FANTOM_REQUESTS_PER_MINUTE=1
KLAYTN_BASE_URL=
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
# We're temporally using a different one.
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
INJECTIVE_REQUESTS_PER_MINUTE=1
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
KARURA_REQUESTS_PER_MINUTE=1
KLAYTN_BASE_URL=https://klaytn-mainnet-rpc.allthatnode.com:8551
KLAYTN_REQUESTS_PER_MINUTE=1
MOONBEAM_BASE_URL=
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
MOONBEAM_REQUESTS_PER_MINUTE=1
OASIS_BASE_URL=
OASIS_BASE_URL=https://emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=1
OPTIMISM_BASE_URL=
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
OPTIMISM_REQUESTS_PER_MINUTE=1
POLYGON_BASE_URL=
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
POLYGON_REQUESTS_PER_MINUTE=1
SOLANA_BASE_URL=
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
SOLANA_REQUESTS_PER_MINUTE=1
SUI_BASE_URL=
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=1
TERRA2_BASE_URL=
TERRA_BASE_URL=https://columbus-fcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=1
TERRA2_BASE_URL=https://phoenix-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=1
XPLA_BASE_URL=
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
XPLA_REQUESTS_PER_MINUTE=1

View File

@ -7,53 +7,65 @@ RESOURCES_LIMITS_CPU=200m
RESOURCES_REQUESTS_MEMORY=64Mi
RESOURCES_REQUESTS_CPU=100m
ALGORAND_BASE_URL=
ACALA_BASE_URL=https://acala-dev.aca-dev.network/eth/http
ACALA_REQUESTS_PER_MINUTE=1
ALGORAND_BASE_URL=https://testnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=1
APTOS_BASE_URL=
APTOS_BASE_URL=https://fullnode.testnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=1
ARBITRUM_BASE_URL=
ARBITRUM_BASE_URL=https://goerli-rollup.arbitrum.io/rpc
ARBITRUM_REQUESTS_PER_MINUTE=1
AVALANCHE_BASE_URL=
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche_fuji
AVALANCHE_REQUESTS_PER_MINUTE=1
BSC_BASE_URL=
BSC_BASE_URL=https://data-seed-prebsc-1-s1.binance.org:8545
BSC_REQUESTS_PER_MINUTE=1
CELO_BASE_URL=
CELO_BASE_URL=https://alfajores-forno.celo-testnet.org
CELO_REQUESTS_PER_MINUTE=1
ETHEREUM_BASE_URL=
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth_goerli
ETHEREUM_REQUESTS_PER_MINUTE=1
FANTOM_BASE_URL=
FANTOM_BASE_URL=https://rpc.testnet.fantom.network
FANTOM_REQUESTS_PER_MINUTE=1
KLAYTN_BASE_URL=
INJECTIVE_BASE_URL=https://k8s.testnet.tm.injective.network:443
INJECTIVE_REQUESTS_PER_MINUTE=4
KARURA_BASE_URL=https://karura-dev.aca-dev.network/eth/http
KARURA_REQUESTS_PER_MINUTE=1
KLAYTN_BASE_URL=https://api.baobab.klaytn.net:8651
KLAYTN_REQUESTS_PER_MINUTE=1
MOONBEAM_BASE_URL=
MOONBEAM_BASE_URL=https://rpc.api.moonbase.moonbeam.network
MOONBEAM_REQUESTS_PER_MINUTE=1
OASIS_BASE_URL=
OASIS_BASE_URL=https://testnet.emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=1
OPTIMISM_BASE_URL=
OPTIMISM_BASE_URL=https://goerli.optimism.io
OPTIMISM_REQUESTS_PER_MINUTE=1
POLYGON_BASE_URL=
POLYGON_BASE_URL=https://rpc.ankr.com/polygon_mumbai
POLYGON_REQUESTS_PER_MINUTE=1
SOLANA_BASE_URL=
SOLANA_BASE_URL=https://api.devnet.solana.com
SOLANA_REQUESTS_PER_MINUTE=1
SUI_BASE_URL=
SUI_BASE_URL=https://fullnode.testnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=1
TERRA2_BASE_URL=
TERRA_BASE_URL=https://bombay-lcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=1
TERRA2_BASE_URL=https://pisco-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=1
XPLA_BASE_URL=
XPLA_BASE_URL=https://cube-lcd.xpla.dev:443
XPLA_REQUESTS_PER_MINUTE=1

View File

@ -31,6 +31,10 @@ spec:
configMapKeyRef:
name: config
key: mongo-database
- name: ACALA_BASE_URL
value: {{ .ACALA_BASE_URL }}
- name: ACALA_REQUESTS_PER_MINUTE
value: "{{ .ACALA_REQUESTS_PER_MINUTE }}"
- name: ALGORAND_BASE_URL
value: {{ .ALGORAND_BASE_URL }}
- name: ALGORAND_REQUESTS_PER_MINUTE
@ -63,6 +67,14 @@ spec:
value: {{ .FANTOM_BASE_URL }}
- name: FANTOM_REQUESTS_PER_MINUTE
value: "{{ .FANTOM_REQUESTS_PER_MINUTE }}"
- name: INJECTIVE_BASE_URL
value: {{ .INJECTIVE_BASE_URL }}
- name: INJECTIVE_REQUESTS_PER_MINUTE
value: "{{ .INJECTIVE_REQUESTS_PER_MINUTE }}"
- name: KARURA_BASE_URL
value: {{ .KARURA_BASE_URL }}
- name: KARURA_REQUESTS_PER_MINUTE
value: "{{ .KARURA_REQUESTS_PER_MINUTE }}"
- name: KLAYTN_BASE_URL
value: {{ .KLAYTN_BASE_URL }}
- name: KLAYTN_REQUESTS_PER_MINUTE
@ -91,6 +103,10 @@ spec:
value: {{ .SUI_BASE_URL }}
- name: SUI_REQUESTS_PER_MINUTE
value: "{{ .SUI_REQUESTS_PER_MINUTE }}"
- name: TERRA_BASE_URL
value: {{ .TERRA_BASE_URL }}
- name: TERRA_REQUESTS_PER_MINUTE
value: "{{ .TERRA_REQUESTS_PER_MINUTE }}"
- name: TERRA2_BASE_URL
value: {{ .TERRA2_BASE_URL }}
- name: TERRA2_REQUESTS_PER_MINUTE

View File

@ -11,53 +11,67 @@ SQS_URL=
SQS_AWS_REGION=
AWS_IAM_ROLE=
ALGORAND_BASE_URL=
ALGORAND_REQUESTS_PER_MINUTE=8
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
ACALA_REQUESTS_PER_MINUTE=4
APTOS_BASE_URL=
ALGORAND_BASE_URL=https://mainnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=4
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=8
ARBITRUM_BASE_URL=
ARBITRUM_REQUESTS_PER_MINUTE=8
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
ARBITRUM_REQUESTS_PER_MINUTE=4
AVALANCHE_BASE_URL=
AVALANCHE_REQUESTS_PER_MINUTE=4
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
AVALANCHE_REQUESTS_PER_MINUTE=6
BSC_BASE_URL=
BSC_REQUESTS_PER_MINUTE=8
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
BSC_REQUESTS_PER_MINUTE=6
CELO_BASE_URL=
CELO_REQUESTS_PER_MINUTE=8
CELO_BASE_URL=https://forno.celo.org
CELO_REQUESTS_PER_MINUTE=4
ETHEREUM_BASE_URL=
ETHEREUM_REQUESTS_PER_MINUTE=8
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
ETHEREUM_REQUESTS_PER_MINUTE=6
FANTOM_BASE_URL=
FANTOM_REQUESTS_PER_MINUTE=8
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
FANTOM_REQUESTS_PER_MINUTE=4
KLAYTN_BASE_URL=
KLAYTN_REQUESTS_PER_MINUTE=8
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
# We're temporally using a different one.
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
INJECTIVE_REQUESTS_PER_MINUTE=4
MOONBEAM_BASE_URL=
MOONBEAM_REQUESTS_PER_MINUTE=8
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
KARURA_REQUESTS_PER_MINUTE=4
OASIS_BASE_URL=
KLAYTN_BASE_URL=https://klaytn-mainnet-rpc.allthatnode.com:8551
KLAYTN_REQUESTS_PER_MINUTE=4
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
MOONBEAM_REQUESTS_PER_MINUTE=4
OASIS_BASE_URL=https://emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=4
OPTIMISM_BASE_URL=
OPTIMISM_REQUESTS_PER_MINUTE=8
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
OPTIMISM_REQUESTS_PER_MINUTE=4
POLYGON_BASE_URL=
POLYGON_REQUESTS_PER_MINUTE=8
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
POLYGON_REQUESTS_PER_MINUTE=6
SOLANA_BASE_URL=
SOLANA_REQUESTS_PER_MINUTE=4
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
SOLANA_REQUESTS_PER_MINUTE=8
SUI_BASE_URL=
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=4
TERRA2_BASE_URL=
TERRA_BASE_URL=https://columbus-fcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=4
TERRA2_BASE_URL=https://phoenix-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=4
XPLA_BASE_URL=
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
XPLA_REQUESTS_PER_MINUTE=4

View File

@ -11,53 +11,67 @@ SQS_URL=
SQS_AWS_REGION=
AWS_IAM_ROLE=
ALGORAND_BASE_URL=
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
ACALA_REQUESTS_PER_MINUTE=2
ALGORAND_BASE_URL=https://mainnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=2
APTOS_BASE_URL=
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=2
ARBITRUM_BASE_URL=
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
ARBITRUM_REQUESTS_PER_MINUTE=2
AVALANCHE_BASE_URL=
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
AVALANCHE_REQUESTS_PER_MINUTE=2
BSC_BASE_URL=
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
BSC_REQUESTS_PER_MINUTE=2
CELO_BASE_URL=
CELO_BASE_URL=https://forno.celo.org
CELO_REQUESTS_PER_MINUTE=2
ETHEREUM_BASE_URL=
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
ETHEREUM_REQUESTS_PER_MINUTE=2
FANTOM_BASE_URL=
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
FANTOM_REQUESTS_PER_MINUTE=2
KLAYTN_BASE_URL=
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
# We're temporally using a different one.
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
INJECTIVE_REQUESTS_PER_MINUTE=2
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
KARURA_REQUESTS_PER_MINUTE=2
KLAYTN_BASE_URL=https://klaytn-mainnet-rpc.allthatnode.com:8551
KLAYTN_REQUESTS_PER_MINUTE=2
MOONBEAM_BASE_URL=
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
MOONBEAM_REQUESTS_PER_MINUTE=2
OASIS_BASE_URL=
OASIS_BASE_URL=https://emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=2
OPTIMISM_BASE_URL=
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
OPTIMISM_REQUESTS_PER_MINUTE=2
POLYGON_BASE_URL=
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
POLYGON_REQUESTS_PER_MINUTE=2
SOLANA_BASE_URL=
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
SOLANA_REQUESTS_PER_MINUTE=2
SUI_BASE_URL=
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=2
TERRA2_BASE_URL=
TERRA_BASE_URL=https://columbus-fcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=2
TERRA2_BASE_URL=https://phoenix-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=2
XPLA_BASE_URL=
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
XPLA_REQUESTS_PER_MINUTE=2

View File

@ -11,53 +11,65 @@ SQS_URL=
SQS_AWS_REGION=
AWS_IAM_ROLE=
ALGORAND_BASE_URL=
ACALA_BASE_URL=https://acala-dev.aca-dev.network/eth/http
ACALA_REQUESTS_PER_MINUTE=2
ALGORAND_BASE_URL=https://testnet-idx.algonode.cloud
ALGORAND_REQUESTS_PER_MINUTE=2
APTOS_BASE_URL=
APTOS_BASE_URL=https://fullnode.testnet.aptoslabs.com/v1
APTOS_REQUESTS_PER_MINUTE=2
ARBITRUM_BASE_URL=
ARBITRUM_BASE_URL=https://goerli-rollup.arbitrum.io/rpc
ARBITRUM_REQUESTS_PER_MINUTE=2
AVALANCHE_BASE_URL=
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche_fuji
AVALANCHE_REQUESTS_PER_MINUTE=2
BSC_BASE_URL=
BSC_BASE_URL=https://data-seed-prebsc-1-s1.binance.org:8545
BSC_REQUESTS_PER_MINUTE=2
CELO_BASE_URL=
CELO_BASE_URL=https://alfajores-forno.celo-testnet.org
CELO_REQUESTS_PER_MINUTE=2
ETHEREUM_BASE_URL=
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth_goerli
ETHEREUM_REQUESTS_PER_MINUTE=2
FANTOM_BASE_URL=
FANTOM_BASE_URL=https://rpc.testnet.fantom.network
FANTOM_REQUESTS_PER_MINUTE=2
KLAYTN_BASE_URL=
INJECTIVE_BASE_URL=https://k8s.testnet.tm.injective.network:443
INJECTIVE_REQUESTS_PER_MINUTE=2
KARURA_BASE_URL=https://karura-dev.aca-dev.network/eth/http
KARURA_REQUESTS_PER_MINUTE=2
KLAYTN_BASE_URL=https://api.baobab.klaytn.net:8651
KLAYTN_REQUESTS_PER_MINUTE=2
MOONBEAM_BASE_URL=
MOONBEAM_BASE_URL=https://rpc.api.moonbase.moonbeam.network
MOONBEAM_REQUESTS_PER_MINUTE=2
OASIS_BASE_URL=
OASIS_BASE_URL=https://testnet.emerald.oasis.dev
OASIS_REQUESTS_PER_MINUTE=2
OPTIMISM_BASE_URL=
OPTIMISM_BASE_URL=https://goerli.optimism.io
OPTIMISM_REQUESTS_PER_MINUTE=2
POLYGON_BASE_URL=
POLYGON_BASE_URL=https://rpc.ankr.com/polygon_mumbai
POLYGON_REQUESTS_PER_MINUTE=2
SOLANA_BASE_URL=
SOLANA_BASE_URL=https://api.devnet.solana.com
SOLANA_REQUESTS_PER_MINUTE=2
SUI_BASE_URL=
SUI_BASE_URL=https://fullnode.testnet.sui.io:443
SUI_REQUESTS_PER_MINUTE=2
TERRA2_BASE_URL=
TERRA_BASE_URL=https://bombay-lcd.terra.dev
TERRA_REQUESTS_PER_MINUTE=4
TERRA2_BASE_URL=https://pisco-lcd.terra.dev
TERRA2_REQUESTS_PER_MINUTE=2
XPLA_BASE_URL=
XPLA_BASE_URL=https://cube-lcd.xpla.dev:443
XPLA_REQUESTS_PER_MINUTE=2

View File

@ -57,6 +57,10 @@ spec:
value: {{ .SQS_URL }}
- name: AWS_REGION
value: {{ .SQS_AWS_REGION }}
- name: ACALA_BASE_URL
value: {{ .ACALA_BASE_URL }}
- name: ACALA_REQUESTS_PER_MINUTE
value: "{{ .ACALA_REQUESTS_PER_MINUTE }}"
- name: ALGORAND_BASE_URL
value: {{ .ALGORAND_BASE_URL }}
- name: ALGORAND_REQUESTS_PER_MINUTE
@ -89,6 +93,14 @@ spec:
value: {{ .FANTOM_BASE_URL }}
- name: FANTOM_REQUESTS_PER_MINUTE
value: "{{ .FANTOM_REQUESTS_PER_MINUTE }}"
- name: INJECTIVE_BASE_URL
value: {{ .INJECTIVE_BASE_URL }}
- name: INJECTIVE_REQUESTS_PER_MINUTE
value: "{{ .INJECTIVE_REQUESTS_PER_MINUTE }}"
- name: KARURA_BASE_URL
value: {{ .KARURA_BASE_URL }}
- name: KARURA_REQUESTS_PER_MINUTE
value: "{{ .KARURA_REQUESTS_PER_MINUTE }}"
- name: KLAYTN_BASE_URL
value: {{ .KLAYTN_BASE_URL }}
- name: KLAYTN_REQUESTS_PER_MINUTE
@ -117,6 +129,10 @@ spec:
value: {{ .SUI_BASE_URL }}
- name: SUI_REQUESTS_PER_MINUTE
value: "{{ .SUI_REQUESTS_PER_MINUTE }}"
- name: TERRA_BASE_URL
value: {{ .TERRA_BASE_URL }}
- name: TERRA_REQUESTS_PER_MINUTE
value: "{{ .TERRA_REQUESTS_PER_MINUTE }}"
- name: TERRA2_BASE_URL
value: {{ .TERRA2_BASE_URL }}
- name: TERRA2_REQUESTS_PER_MINUTE

View File

@ -8,7 +8,8 @@ import (
)
const (
cosmosMsgExecuteContract = "/cosmwasm.wasm.v1.MsgExecuteContract"
cosmosMsgExecuteContract = "/cosmwasm.wasm.v1.MsgExecuteContract"
injectiveMsgExecuteContract = "/injective.wasmx.v1.MsgExecuteContractCompat"
)
// cosmosTxsResponse models the response body from `GET /cosmos/tx/v1beta1/txs/{hash}`
@ -53,9 +54,9 @@ func fetchCosmosTx(
// Find the sender address
var sender string
for i := range response.TxResponse.Tx.Body.Messages {
msg := &response.TxResponse.Tx.Body.Messages[i]
if msg.Type_ == cosmosMsgExecuteContract {
if msg.Type_ == cosmosMsgExecuteContract || msg.Type_ == injectiveMsgExecuteContract {
sender = msg.Sender
break
}

View File

@ -47,6 +47,7 @@ func Initialize(cfg *config.RpcProviderSettings) {
// Initialize rate limiters for each chain
rateLimitersByChain = make(map[sdk.ChainID]*time.Ticker)
rateLimitersByChain[sdk.ChainIDAcala] = convertToRateLimiter(cfg.AcalaRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDArbitrum] = convertToRateLimiter(cfg.ArbitrumRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDAlgorand] = convertToRateLimiter(cfg.AlgorandRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDAptos] = convertToRateLimiter(cfg.AptosRequestsPerMinute)
@ -55,18 +56,22 @@ func Initialize(cfg *config.RpcProviderSettings) {
rateLimitersByChain[sdk.ChainIDCelo] = convertToRateLimiter(cfg.CeloRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDEthereum] = convertToRateLimiter(cfg.EthereumRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDFantom] = convertToRateLimiter(cfg.FantomRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDInjective] = convertToRateLimiter(cfg.InjectiveRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDKarura] = convertToRateLimiter(cfg.KaruraRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDKlaytn] = convertToRateLimiter(cfg.KlaytnRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDMoonbeam] = convertToRateLimiter(cfg.MoonbeamRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDOasis] = convertToRateLimiter(cfg.OasisRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDOptimism] = convertToRateLimiter(cfg.OptimismRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDPolygon] = convertToRateLimiter(cfg.PolygonRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDSolana] = convertToRateLimiter(cfg.SolanaRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDTerra] = convertToRateLimiter(cfg.TerraRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDTerra2] = convertToRateLimiter(cfg.Terra2RequestsPerMinute)
rateLimitersByChain[sdk.ChainIDSui] = convertToRateLimiter(cfg.SuiRequestsPerMinute)
rateLimitersByChain[sdk.ChainIDXpla] = convertToRateLimiter(cfg.XplaRequestsPerMinute)
// Initialize the RPC base URLs for each chain
baseUrlsByChain = make(map[sdk.ChainID]string)
baseUrlsByChain[sdk.ChainIDAcala] = cfg.AcalaBaseUrl
baseUrlsByChain[sdk.ChainIDArbitrum] = cfg.ArbitrumBaseUrl
baseUrlsByChain[sdk.ChainIDAlgorand] = cfg.AlgorandBaseUrl
baseUrlsByChain[sdk.ChainIDAptos] = cfg.AptosBaseUrl
@ -75,12 +80,15 @@ func Initialize(cfg *config.RpcProviderSettings) {
baseUrlsByChain[sdk.ChainIDCelo] = cfg.CeloBaseUrl
baseUrlsByChain[sdk.ChainIDEthereum] = cfg.EthereumBaseUrl
baseUrlsByChain[sdk.ChainIDFantom] = cfg.FantomBaseUrl
baseUrlsByChain[sdk.ChainIDInjective] = cfg.InjectiveBaseUrl
baseUrlsByChain[sdk.ChainIDKarura] = cfg.KaruraBaseUrl
baseUrlsByChain[sdk.ChainIDKlaytn] = cfg.KlaytnBaseUrl
baseUrlsByChain[sdk.ChainIDMoonbeam] = cfg.MoonbeamBaseUrl
baseUrlsByChain[sdk.ChainIDOasis] = cfg.OasisBaseUrl
baseUrlsByChain[sdk.ChainIDOptimism] = cfg.OptimismBaseUrl
baseUrlsByChain[sdk.ChainIDPolygon] = cfg.PolygonBaseUrl
baseUrlsByChain[sdk.ChainIDSolana] = cfg.SolanaBaseUrl
baseUrlsByChain[sdk.ChainIDTerra] = cfg.TerraBaseUrl
baseUrlsByChain[sdk.ChainIDTerra2] = cfg.Terra2BaseUrl
baseUrlsByChain[sdk.ChainIDSui] = cfg.SuiBaseUrl
baseUrlsByChain[sdk.ChainIDXpla] = cfg.XplaBaseUrl
@ -104,15 +112,19 @@ func FetchTx(
fetchFunc = fetchAptosTx
case sdk.ChainIDSui:
fetchFunc = fetchSuiTx
case sdk.ChainIDTerra2,
case sdk.ChainIDInjective,
sdk.ChainIDTerra,
sdk.ChainIDTerra2,
sdk.ChainIDXpla:
fetchFunc = fetchCosmosTx
case sdk.ChainIDArbitrum,
case sdk.ChainIDAcala,
sdk.ChainIDArbitrum,
sdk.ChainIDAvalanche,
sdk.ChainIDBSC,
sdk.ChainIDCelo,
sdk.ChainIDEthereum,
sdk.ChainIDFantom,
sdk.ChainIDKarura,
sdk.ChainIDKlaytn,
sdk.ChainIDMoonbeam,
sdk.ChainIDOasis,

View File

@ -59,6 +59,8 @@ type MongodbSettings struct {
}
type RpcProviderSettings struct {
AcalaBaseUrl string `split_words:"true" required:"true"`
AcalaRequestsPerMinute uint16 `split_words:"true" required:"true"`
AlgorandBaseUrl string `split_words:"true" required:"true"`
AlgorandRequestsPerMinute uint16 `split_words:"true" required:"true"`
AptosBaseUrl string `split_words:"true" required:"true"`
@ -75,6 +77,10 @@ type RpcProviderSettings struct {
EthereumRequestsPerMinute uint16 `split_words:"true" required:"true"`
FantomBaseUrl string `split_words:"true" required:"true"`
FantomRequestsPerMinute uint16 `split_words:"true" required:"true"`
InjectiveBaseUrl string `split_words:"true" required:"true"`
InjectiveRequestsPerMinute uint16 `split_words:"true" required:"true"`
KaruraBaseUrl string `split_words:"true" required:"true"`
KaruraRequestsPerMinute uint16 `split_words:"true" required:"true"`
KlaytnBaseUrl string `split_words:"true" required:"true"`
KlaytnRequestsPerMinute uint16 `split_words:"true" required:"true"`
MoonbeamBaseUrl string `split_words:"true" required:"true"`
@ -89,6 +95,8 @@ type RpcProviderSettings struct {
SolanaRequestsPerMinute uint16 `split_words:"true" required:"true"`
SuiBaseUrl string `split_words:"true" required:"true"`
SuiRequestsPerMinute uint16 `split_words:"true" required:"true"`
TerraBaseUrl string `split_words:"true" required:"true"`
TerraRequestsPerMinute uint16 `split_words:"true" required:"true"`
Terra2BaseUrl string `split_words:"true" required:"true"`
Terra2RequestsPerMinute uint16 `split_words:"true" required:"true"`
XplaBaseUrl string `split_words:"true" required:"true"`