[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:
parent
88089a6a0e
commit
9e4aa45305
|
@ -7,53 +7,67 @@ RESOURCES_LIMITS_CPU=500m
|
||||||
RESOURCES_REQUESTS_MEMORY=128Mi
|
RESOURCES_REQUESTS_MEMORY=128Mi
|
||||||
RESOURCES_REQUESTS_CPU=250m
|
RESOURCES_REQUESTS_CPU=250m
|
||||||
|
|
||||||
ALGORAND_BASE_URL=
|
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
|
||||||
ALGORAND_REQUESTS_PER_MINUTE=2
|
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
|
APTOS_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=2
|
ARBITRUM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=2
|
AVALANCHE_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
BSC_BASE_URL=
|
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
|
||||||
BSC_REQUESTS_PER_MINUTE=2
|
BSC_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://forno.celo.org
|
||||||
CELO_REQUESTS_PER_MINUTE=2
|
CELO_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=2
|
ETHEREUM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
|
||||||
FANTOM_REQUESTS_PER_MINUTE=2
|
FANTOM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
KLAYTN_BASE_URL=
|
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
|
||||||
KLAYTN_REQUESTS_PER_MINUTE=2
|
# We're temporally using a different one.
|
||||||
|
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
|
||||||
|
INJECTIVE_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=2
|
KARURA_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OASIS_BASE_URL=
|
KLAYTN_BASE_URL=https://klaytn-mainnet-rpc.allthatnode.com:8551
|
||||||
OASIS_REQUESTS_PER_MINUTE=2
|
KLAYTN_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=2
|
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
|
POLYGON_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=2
|
SOLANA_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=2
|
SUI_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
TERRA2_BASE_URL=
|
TERRA_BASE_URL=https://columbus-fcd.terra.dev
|
||||||
TERRA2_REQUESTS_PER_MINUTE=2
|
TERRA_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
TERRA2_BASE_URL=https://phoenix-lcd.terra.dev
|
||||||
XPLA_REQUESTS_PER_MINUTE=2
|
TERRA2_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
|
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
|
||||||
|
XPLA_REQUESTS_PER_MINUTE=1
|
|
@ -11,53 +11,67 @@ STRATEGY_NAME=time_range
|
||||||
STRATEGY_TIMESTAMP_AFTER=2023-01-01T00:00:00.000Z
|
STRATEGY_TIMESTAMP_AFTER=2023-01-01T00:00:00.000Z
|
||||||
STRATEGY_TIMESTAMP_BEFORE=2023-04-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
|
ALGORAND_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
APTOS_BASE_URL=
|
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
|
||||||
APTOS_REQUESTS_PER_MINUTE=1
|
APTOS_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=1
|
ARBITRUM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=1
|
AVALANCHE_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
BSC_BASE_URL=
|
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
|
||||||
BSC_REQUESTS_PER_MINUTE=1
|
BSC_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://forno.celo.org
|
||||||
CELO_REQUESTS_PER_MINUTE=1
|
CELO_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=1
|
ETHEREUM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
|
||||||
FANTOM_REQUESTS_PER_MINUTE=1
|
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
|
KLAYTN_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=1
|
MOONBEAM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OASIS_BASE_URL=
|
OASIS_BASE_URL=https://emerald.oasis.dev
|
||||||
OASIS_REQUESTS_PER_MINUTE=1
|
OASIS_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=1
|
OPTIMISM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
POLYGON_BASE_URL=
|
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
|
||||||
POLYGON_REQUESTS_PER_MINUTE=1
|
POLYGON_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=1
|
SOLANA_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=1
|
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
|
TERRA2_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
|
||||||
XPLA_REQUESTS_PER_MINUTE=1
|
XPLA_REQUESTS_PER_MINUTE=1
|
|
@ -7,53 +7,65 @@ RESOURCES_LIMITS_CPU=200m
|
||||||
RESOURCES_REQUESTS_MEMORY=64Mi
|
RESOURCES_REQUESTS_MEMORY=64Mi
|
||||||
RESOURCES_REQUESTS_CPU=100m
|
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
|
ALGORAND_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
APTOS_BASE_URL=
|
APTOS_BASE_URL=https://fullnode.testnet.aptoslabs.com/v1
|
||||||
APTOS_REQUESTS_PER_MINUTE=1
|
APTOS_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://goerli-rollup.arbitrum.io/rpc
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=1
|
ARBITRUM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche_fuji
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=1
|
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
|
BSC_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://alfajores-forno.celo-testnet.org
|
||||||
CELO_REQUESTS_PER_MINUTE=1
|
CELO_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth_goerli
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=1
|
ETHEREUM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.testnet.fantom.network
|
||||||
FANTOM_REQUESTS_PER_MINUTE=1
|
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
|
KLAYTN_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
MOONBEAM_BASE_URL=https://rpc.api.moonbase.moonbeam.network
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=1
|
MOONBEAM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OASIS_BASE_URL=
|
OASIS_BASE_URL=https://testnet.emerald.oasis.dev
|
||||||
OASIS_REQUESTS_PER_MINUTE=1
|
OASIS_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
OPTIMISM_BASE_URL=https://goerli.optimism.io
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=1
|
OPTIMISM_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
POLYGON_BASE_URL=
|
POLYGON_BASE_URL=https://rpc.ankr.com/polygon_mumbai
|
||||||
POLYGON_REQUESTS_PER_MINUTE=1
|
POLYGON_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.devnet.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=1
|
SOLANA_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.testnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=1
|
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
|
TERRA2_REQUESTS_PER_MINUTE=1
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
XPLA_BASE_URL=https://cube-lcd.xpla.dev:443
|
||||||
XPLA_REQUESTS_PER_MINUTE=1
|
XPLA_REQUESTS_PER_MINUTE=1
|
||||||
|
|
|
@ -31,6 +31,10 @@ spec:
|
||||||
configMapKeyRef:
|
configMapKeyRef:
|
||||||
name: config
|
name: config
|
||||||
key: mongo-database
|
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
|
- name: ALGORAND_BASE_URL
|
||||||
value: {{ .ALGORAND_BASE_URL }}
|
value: {{ .ALGORAND_BASE_URL }}
|
||||||
- name: ALGORAND_REQUESTS_PER_MINUTE
|
- name: ALGORAND_REQUESTS_PER_MINUTE
|
||||||
|
@ -63,6 +67,14 @@ spec:
|
||||||
value: {{ .FANTOM_BASE_URL }}
|
value: {{ .FANTOM_BASE_URL }}
|
||||||
- name: FANTOM_REQUESTS_PER_MINUTE
|
- name: FANTOM_REQUESTS_PER_MINUTE
|
||||||
value: "{{ .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
|
- name: KLAYTN_BASE_URL
|
||||||
value: {{ .KLAYTN_BASE_URL }}
|
value: {{ .KLAYTN_BASE_URL }}
|
||||||
- name: KLAYTN_REQUESTS_PER_MINUTE
|
- name: KLAYTN_REQUESTS_PER_MINUTE
|
||||||
|
@ -91,6 +103,10 @@ spec:
|
||||||
value: {{ .SUI_BASE_URL }}
|
value: {{ .SUI_BASE_URL }}
|
||||||
- name: SUI_REQUESTS_PER_MINUTE
|
- name: SUI_REQUESTS_PER_MINUTE
|
||||||
value: "{{ .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
|
- name: TERRA2_BASE_URL
|
||||||
value: {{ .TERRA2_BASE_URL }}
|
value: {{ .TERRA2_BASE_URL }}
|
||||||
- name: TERRA2_REQUESTS_PER_MINUTE
|
- name: TERRA2_REQUESTS_PER_MINUTE
|
||||||
|
|
|
@ -11,53 +11,67 @@ SQS_URL=
|
||||||
SQS_AWS_REGION=
|
SQS_AWS_REGION=
|
||||||
AWS_IAM_ROLE=
|
AWS_IAM_ROLE=
|
||||||
|
|
||||||
ALGORAND_BASE_URL=
|
ACALA_BASE_URL=https://eth-rpc-acala.aca-api.network
|
||||||
ALGORAND_REQUESTS_PER_MINUTE=8
|
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
|
APTOS_REQUESTS_PER_MINUTE=8
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=8
|
ARBITRUM_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=4
|
AVALANCHE_REQUESTS_PER_MINUTE=6
|
||||||
|
|
||||||
BSC_BASE_URL=
|
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
|
||||||
BSC_REQUESTS_PER_MINUTE=8
|
BSC_REQUESTS_PER_MINUTE=6
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://forno.celo.org
|
||||||
CELO_REQUESTS_PER_MINUTE=8
|
CELO_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=8
|
ETHEREUM_REQUESTS_PER_MINUTE=6
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
|
||||||
FANTOM_REQUESTS_PER_MINUTE=8
|
FANTOM_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
KLAYTN_BASE_URL=
|
# Currently, the main URL for injective RPC (https://k8s.mainnet.lcd.injective.network) is down.
|
||||||
KLAYTN_REQUESTS_PER_MINUTE=8
|
# We're temporally using a different one.
|
||||||
|
INJECTIVE_BASE_URL=http://sentry2.injective.network:10337/
|
||||||
|
INJECTIVE_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
KARURA_BASE_URL=https://eth-rpc-karura.aca-api.network
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=8
|
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
|
OASIS_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=8
|
OPTIMISM_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
POLYGON_BASE_URL=
|
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
|
||||||
POLYGON_REQUESTS_PER_MINUTE=8
|
POLYGON_REQUESTS_PER_MINUTE=6
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=4
|
SOLANA_REQUESTS_PER_MINUTE=8
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=4
|
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
|
TERRA2_REQUESTS_PER_MINUTE=4
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
|
||||||
XPLA_REQUESTS_PER_MINUTE=4
|
XPLA_REQUESTS_PER_MINUTE=4
|
|
@ -11,53 +11,67 @@ SQS_URL=
|
||||||
SQS_AWS_REGION=
|
SQS_AWS_REGION=
|
||||||
AWS_IAM_ROLE=
|
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
|
ALGORAND_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
APTOS_BASE_URL=
|
APTOS_BASE_URL=https://fullnode.mainnet.aptoslabs.com/v1
|
||||||
APTOS_REQUESTS_PER_MINUTE=2
|
APTOS_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://rpc.ankr.com/arbitrum
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=2
|
ARBITRUM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=2
|
AVALANCHE_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
BSC_BASE_URL=
|
BSC_BASE_URL=https://bsc-dataseed2.defibit.io
|
||||||
BSC_REQUESTS_PER_MINUTE=2
|
BSC_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://forno.celo.org
|
||||||
CELO_REQUESTS_PER_MINUTE=2
|
CELO_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=2
|
ETHEREUM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.ankr.com/fantom
|
||||||
FANTOM_REQUESTS_PER_MINUTE=2
|
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
|
KLAYTN_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
MOONBEAM_BASE_URL=https://rpc.ankr.com/moonbeam
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=2
|
MOONBEAM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
OASIS_BASE_URL=
|
OASIS_BASE_URL=https://emerald.oasis.dev
|
||||||
OASIS_REQUESTS_PER_MINUTE=2
|
OASIS_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
OPTIMISM_BASE_URL=https://rpc.ankr.com/optimism
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=2
|
OPTIMISM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
POLYGON_BASE_URL=
|
POLYGON_BASE_URL=https://rpc.ankr.com/polygon
|
||||||
POLYGON_REQUESTS_PER_MINUTE=2
|
POLYGON_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.mainnet-beta.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=2
|
SOLANA_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.mainnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=2
|
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
|
TERRA2_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
XPLA_BASE_URL=https://dimension-lcd.xpla.dev
|
||||||
XPLA_REQUESTS_PER_MINUTE=2
|
XPLA_REQUESTS_PER_MINUTE=2
|
|
@ -11,53 +11,65 @@ SQS_URL=
|
||||||
SQS_AWS_REGION=
|
SQS_AWS_REGION=
|
||||||
AWS_IAM_ROLE=
|
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
|
ALGORAND_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
APTOS_BASE_URL=
|
APTOS_BASE_URL=https://fullnode.testnet.aptoslabs.com/v1
|
||||||
APTOS_REQUESTS_PER_MINUTE=2
|
APTOS_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
ARBITRUM_BASE_URL=
|
ARBITRUM_BASE_URL=https://goerli-rollup.arbitrum.io/rpc
|
||||||
ARBITRUM_REQUESTS_PER_MINUTE=2
|
ARBITRUM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
AVALANCHE_BASE_URL=
|
AVALANCHE_BASE_URL=https://rpc.ankr.com/avalanche_fuji
|
||||||
AVALANCHE_REQUESTS_PER_MINUTE=2
|
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
|
BSC_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
CELO_BASE_URL=
|
CELO_BASE_URL=https://alfajores-forno.celo-testnet.org
|
||||||
CELO_REQUESTS_PER_MINUTE=2
|
CELO_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
ETHEREUM_BASE_URL=
|
ETHEREUM_BASE_URL=https://rpc.ankr.com/eth_goerli
|
||||||
ETHEREUM_REQUESTS_PER_MINUTE=2
|
ETHEREUM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
FANTOM_BASE_URL=
|
FANTOM_BASE_URL=https://rpc.testnet.fantom.network
|
||||||
FANTOM_REQUESTS_PER_MINUTE=2
|
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
|
KLAYTN_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
MOONBEAM_BASE_URL=
|
MOONBEAM_BASE_URL=https://rpc.api.moonbase.moonbeam.network
|
||||||
MOONBEAM_REQUESTS_PER_MINUTE=2
|
MOONBEAM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
OASIS_BASE_URL=
|
OASIS_BASE_URL=https://testnet.emerald.oasis.dev
|
||||||
OASIS_REQUESTS_PER_MINUTE=2
|
OASIS_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
OPTIMISM_BASE_URL=
|
OPTIMISM_BASE_URL=https://goerli.optimism.io
|
||||||
OPTIMISM_REQUESTS_PER_MINUTE=2
|
OPTIMISM_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
POLYGON_BASE_URL=
|
POLYGON_BASE_URL=https://rpc.ankr.com/polygon_mumbai
|
||||||
POLYGON_REQUESTS_PER_MINUTE=2
|
POLYGON_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SOLANA_BASE_URL=
|
SOLANA_BASE_URL=https://api.devnet.solana.com
|
||||||
SOLANA_REQUESTS_PER_MINUTE=2
|
SOLANA_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
SUI_BASE_URL=
|
SUI_BASE_URL=https://fullnode.testnet.sui.io:443
|
||||||
SUI_REQUESTS_PER_MINUTE=2
|
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
|
TERRA2_REQUESTS_PER_MINUTE=2
|
||||||
|
|
||||||
XPLA_BASE_URL=
|
XPLA_BASE_URL=https://cube-lcd.xpla.dev:443
|
||||||
XPLA_REQUESTS_PER_MINUTE=2
|
XPLA_REQUESTS_PER_MINUTE=2
|
|
@ -57,6 +57,10 @@ spec:
|
||||||
value: {{ .SQS_URL }}
|
value: {{ .SQS_URL }}
|
||||||
- name: AWS_REGION
|
- name: AWS_REGION
|
||||||
value: {{ .SQS_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
|
- name: ALGORAND_BASE_URL
|
||||||
value: {{ .ALGORAND_BASE_URL }}
|
value: {{ .ALGORAND_BASE_URL }}
|
||||||
- name: ALGORAND_REQUESTS_PER_MINUTE
|
- name: ALGORAND_REQUESTS_PER_MINUTE
|
||||||
|
@ -89,6 +93,14 @@ spec:
|
||||||
value: {{ .FANTOM_BASE_URL }}
|
value: {{ .FANTOM_BASE_URL }}
|
||||||
- name: FANTOM_REQUESTS_PER_MINUTE
|
- name: FANTOM_REQUESTS_PER_MINUTE
|
||||||
value: "{{ .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
|
- name: KLAYTN_BASE_URL
|
||||||
value: {{ .KLAYTN_BASE_URL }}
|
value: {{ .KLAYTN_BASE_URL }}
|
||||||
- name: KLAYTN_REQUESTS_PER_MINUTE
|
- name: KLAYTN_REQUESTS_PER_MINUTE
|
||||||
|
@ -117,6 +129,10 @@ spec:
|
||||||
value: {{ .SUI_BASE_URL }}
|
value: {{ .SUI_BASE_URL }}
|
||||||
- name: SUI_REQUESTS_PER_MINUTE
|
- name: SUI_REQUESTS_PER_MINUTE
|
||||||
value: "{{ .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
|
- name: TERRA2_BASE_URL
|
||||||
value: {{ .TERRA2_BASE_URL }}
|
value: {{ .TERRA2_BASE_URL }}
|
||||||
- name: TERRA2_REQUESTS_PER_MINUTE
|
- name: TERRA2_REQUESTS_PER_MINUTE
|
||||||
|
|
|
@ -8,7 +8,8 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
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}`
|
// cosmosTxsResponse models the response body from `GET /cosmos/tx/v1beta1/txs/{hash}`
|
||||||
|
@ -53,9 +54,9 @@ func fetchCosmosTx(
|
||||||
// Find the sender address
|
// Find the sender address
|
||||||
var sender string
|
var sender string
|
||||||
for i := range response.TxResponse.Tx.Body.Messages {
|
for i := range response.TxResponse.Tx.Body.Messages {
|
||||||
|
|
||||||
msg := &response.TxResponse.Tx.Body.Messages[i]
|
msg := &response.TxResponse.Tx.Body.Messages[i]
|
||||||
if msg.Type_ == cosmosMsgExecuteContract {
|
|
||||||
|
if msg.Type_ == cosmosMsgExecuteContract || msg.Type_ == injectiveMsgExecuteContract {
|
||||||
sender = msg.Sender
|
sender = msg.Sender
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
|
@ -47,6 +47,7 @@ func Initialize(cfg *config.RpcProviderSettings) {
|
||||||
|
|
||||||
// Initialize rate limiters for each chain
|
// Initialize rate limiters for each chain
|
||||||
rateLimitersByChain = make(map[sdk.ChainID]*time.Ticker)
|
rateLimitersByChain = make(map[sdk.ChainID]*time.Ticker)
|
||||||
|
rateLimitersByChain[sdk.ChainIDAcala] = convertToRateLimiter(cfg.AcalaRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDArbitrum] = convertToRateLimiter(cfg.ArbitrumRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDArbitrum] = convertToRateLimiter(cfg.ArbitrumRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDAlgorand] = convertToRateLimiter(cfg.AlgorandRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDAlgorand] = convertToRateLimiter(cfg.AlgorandRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDAptos] = convertToRateLimiter(cfg.AptosRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDAptos] = convertToRateLimiter(cfg.AptosRequestsPerMinute)
|
||||||
|
@ -55,18 +56,22 @@ func Initialize(cfg *config.RpcProviderSettings) {
|
||||||
rateLimitersByChain[sdk.ChainIDCelo] = convertToRateLimiter(cfg.CeloRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDCelo] = convertToRateLimiter(cfg.CeloRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDEthereum] = convertToRateLimiter(cfg.EthereumRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDEthereum] = convertToRateLimiter(cfg.EthereumRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDFantom] = convertToRateLimiter(cfg.FantomRequestsPerMinute)
|
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.ChainIDKlaytn] = convertToRateLimiter(cfg.KlaytnRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDMoonbeam] = convertToRateLimiter(cfg.MoonbeamRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDMoonbeam] = convertToRateLimiter(cfg.MoonbeamRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDOasis] = convertToRateLimiter(cfg.OasisRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDOasis] = convertToRateLimiter(cfg.OasisRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDOptimism] = convertToRateLimiter(cfg.OptimismRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDOptimism] = convertToRateLimiter(cfg.OptimismRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDPolygon] = convertToRateLimiter(cfg.PolygonRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDPolygon] = convertToRateLimiter(cfg.PolygonRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDSolana] = convertToRateLimiter(cfg.SolanaRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDSolana] = convertToRateLimiter(cfg.SolanaRequestsPerMinute)
|
||||||
|
rateLimitersByChain[sdk.ChainIDTerra] = convertToRateLimiter(cfg.TerraRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDTerra2] = convertToRateLimiter(cfg.Terra2RequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDTerra2] = convertToRateLimiter(cfg.Terra2RequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDSui] = convertToRateLimiter(cfg.SuiRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDSui] = convertToRateLimiter(cfg.SuiRequestsPerMinute)
|
||||||
rateLimitersByChain[sdk.ChainIDXpla] = convertToRateLimiter(cfg.XplaRequestsPerMinute)
|
rateLimitersByChain[sdk.ChainIDXpla] = convertToRateLimiter(cfg.XplaRequestsPerMinute)
|
||||||
|
|
||||||
// Initialize the RPC base URLs for each chain
|
// Initialize the RPC base URLs for each chain
|
||||||
baseUrlsByChain = make(map[sdk.ChainID]string)
|
baseUrlsByChain = make(map[sdk.ChainID]string)
|
||||||
|
baseUrlsByChain[sdk.ChainIDAcala] = cfg.AcalaBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDArbitrum] = cfg.ArbitrumBaseUrl
|
baseUrlsByChain[sdk.ChainIDArbitrum] = cfg.ArbitrumBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDAlgorand] = cfg.AlgorandBaseUrl
|
baseUrlsByChain[sdk.ChainIDAlgorand] = cfg.AlgorandBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDAptos] = cfg.AptosBaseUrl
|
baseUrlsByChain[sdk.ChainIDAptos] = cfg.AptosBaseUrl
|
||||||
|
@ -75,12 +80,15 @@ func Initialize(cfg *config.RpcProviderSettings) {
|
||||||
baseUrlsByChain[sdk.ChainIDCelo] = cfg.CeloBaseUrl
|
baseUrlsByChain[sdk.ChainIDCelo] = cfg.CeloBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDEthereum] = cfg.EthereumBaseUrl
|
baseUrlsByChain[sdk.ChainIDEthereum] = cfg.EthereumBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDFantom] = cfg.FantomBaseUrl
|
baseUrlsByChain[sdk.ChainIDFantom] = cfg.FantomBaseUrl
|
||||||
|
baseUrlsByChain[sdk.ChainIDInjective] = cfg.InjectiveBaseUrl
|
||||||
|
baseUrlsByChain[sdk.ChainIDKarura] = cfg.KaruraBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDKlaytn] = cfg.KlaytnBaseUrl
|
baseUrlsByChain[sdk.ChainIDKlaytn] = cfg.KlaytnBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDMoonbeam] = cfg.MoonbeamBaseUrl
|
baseUrlsByChain[sdk.ChainIDMoonbeam] = cfg.MoonbeamBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDOasis] = cfg.OasisBaseUrl
|
baseUrlsByChain[sdk.ChainIDOasis] = cfg.OasisBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDOptimism] = cfg.OptimismBaseUrl
|
baseUrlsByChain[sdk.ChainIDOptimism] = cfg.OptimismBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDPolygon] = cfg.PolygonBaseUrl
|
baseUrlsByChain[sdk.ChainIDPolygon] = cfg.PolygonBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDSolana] = cfg.SolanaBaseUrl
|
baseUrlsByChain[sdk.ChainIDSolana] = cfg.SolanaBaseUrl
|
||||||
|
baseUrlsByChain[sdk.ChainIDTerra] = cfg.TerraBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDTerra2] = cfg.Terra2BaseUrl
|
baseUrlsByChain[sdk.ChainIDTerra2] = cfg.Terra2BaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDSui] = cfg.SuiBaseUrl
|
baseUrlsByChain[sdk.ChainIDSui] = cfg.SuiBaseUrl
|
||||||
baseUrlsByChain[sdk.ChainIDXpla] = cfg.XplaBaseUrl
|
baseUrlsByChain[sdk.ChainIDXpla] = cfg.XplaBaseUrl
|
||||||
|
@ -104,15 +112,19 @@ func FetchTx(
|
||||||
fetchFunc = fetchAptosTx
|
fetchFunc = fetchAptosTx
|
||||||
case sdk.ChainIDSui:
|
case sdk.ChainIDSui:
|
||||||
fetchFunc = fetchSuiTx
|
fetchFunc = fetchSuiTx
|
||||||
case sdk.ChainIDTerra2,
|
case sdk.ChainIDInjective,
|
||||||
|
sdk.ChainIDTerra,
|
||||||
|
sdk.ChainIDTerra2,
|
||||||
sdk.ChainIDXpla:
|
sdk.ChainIDXpla:
|
||||||
fetchFunc = fetchCosmosTx
|
fetchFunc = fetchCosmosTx
|
||||||
case sdk.ChainIDArbitrum,
|
case sdk.ChainIDAcala,
|
||||||
|
sdk.ChainIDArbitrum,
|
||||||
sdk.ChainIDAvalanche,
|
sdk.ChainIDAvalanche,
|
||||||
sdk.ChainIDBSC,
|
sdk.ChainIDBSC,
|
||||||
sdk.ChainIDCelo,
|
sdk.ChainIDCelo,
|
||||||
sdk.ChainIDEthereum,
|
sdk.ChainIDEthereum,
|
||||||
sdk.ChainIDFantom,
|
sdk.ChainIDFantom,
|
||||||
|
sdk.ChainIDKarura,
|
||||||
sdk.ChainIDKlaytn,
|
sdk.ChainIDKlaytn,
|
||||||
sdk.ChainIDMoonbeam,
|
sdk.ChainIDMoonbeam,
|
||||||
sdk.ChainIDOasis,
|
sdk.ChainIDOasis,
|
||||||
|
|
|
@ -59,6 +59,8 @@ type MongodbSettings struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type RpcProviderSettings 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"`
|
AlgorandBaseUrl string `split_words:"true" required:"true"`
|
||||||
AlgorandRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
AlgorandRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
||||||
AptosBaseUrl string `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"`
|
EthereumRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
||||||
FantomBaseUrl string `split_words:"true" required:"true"`
|
FantomBaseUrl string `split_words:"true" required:"true"`
|
||||||
FantomRequestsPerMinute uint16 `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"`
|
KlaytnBaseUrl string `split_words:"true" required:"true"`
|
||||||
KlaytnRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
KlaytnRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
||||||
MoonbeamBaseUrl string `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"`
|
SolanaRequestsPerMinute uint16 `split_words:"true" required:"true"`
|
||||||
SuiBaseUrl string `split_words:"true" required:"true"`
|
SuiBaseUrl string `split_words:"true" required:"true"`
|
||||||
SuiRequestsPerMinute uint16 `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"`
|
Terra2BaseUrl string `split_words:"true" required:"true"`
|
||||||
Terra2RequestsPerMinute uint16 `split_words:"true" required:"true"`
|
Terra2RequestsPerMinute uint16 `split_words:"true" required:"true"`
|
||||||
XplaBaseUrl string `split_words:"true" required:"true"`
|
XplaBaseUrl string `split_words:"true" required:"true"`
|
||||||
|
|
Loading…
Reference in New Issue