* initial spy-relayer
* Update spy_relayer Dockerfile
* added example mainnet config files
* split out private keys into its own ENV variable
* Update spy relayer supportedChains.json
To remove the `walletPrivateKey` entries. All of the private keys have
been split out into their own json file.
* fixed evm private key env parse
* missing solana accounts report 0 balance, rather than error
* wallet address is logged in debug
* spy_relayer: enabled prometheus default metrics
Also set a prefix of `relayer_`
* spy_relayer: updates to the prometheus bits
* Use a single metric registry
* Use a simpler metric name and add labels for individual wallets
* spy_relayer: human readable app mode in the metrics
[ listener | relayer | both ]
* spy_relayer: unify metrics
* remove the collection of default metrics
* hardcode the `spy_relayer_` prefix on all custom metrics
* fixed dep arrays, nullable terra token/balance info
* attempt stack debug
* debug pullTerraBalance
* provider http or ws
* update sdk
* logging for tokenAddress is 0
* fix foreign address calc
* fix calcLocalAddressesTerra
* relayer/spy_relayer: update prometheus helpers
Add / url handler for the ingress-gce stupid load balancer that
doesn't support custom url healthchecks unless you make a BackendConfig
custom resource definition.
* logging refinement
* use chain name in prometheus
* adjust retry timeout calculation
* spy_relayer: update prometheus bits
* improved error handling
* relayer ui improvements
* prep sdk release
* use latest sdk, manual redeem button
* relaying ux improvements
* gas price fix
* shortened terra success log
* use gh base relayer list
* fix prometheus urls
* Update prometheus metric name
* only show TPS warning on mainnet
* show relayer fee in source preview
* fix unwrap check
* add native bool to balance metric
* logging improvements
* add feeRecipientAddress to redeemOnSolana
* gather solana fees
* remove relayer ws support
* add nativeCurrencySymbol to ChainConfigInfo
* fix solana native symbol
* demoteWorking option, logger contexts
* scoped logging
* bridge_ui: unwrap native
* add evm wallet monitor test
* solana vaa parsing fix
* add monitorRedis
* make Jeff's brain happy
* log demoting keys
* register redisQueue metric
* human readable redisQueue metric
* fix timestamp inconsistency
* use scopedLogger for the first level of workers
* pull wallet balances in parallel
* more scoped logging
* pick a solana fee
* moving keys log improvement
* update eth gas calculations based on recent txs
* use postVaaSolanaWithRetry
* split success and failures by chain
* fix using terraCoin
* check prom every 10s
* batch getting evm token balances
* batch calcLocalAddressesEVM
* debug worker logging
* log retry number
* support Polygon?
* reset status on demotion
* enhance!
* update avax fee
Co-authored-by: Chase Moran <chasemoran45@gmail.com>
Co-authored-by: Kevin Peters <kpeters@jumptrading.com>
Co-authored-by: Evan Gray <battledingo@gmail.com>
* Stub out algorand support in wormhole
1) Introduce the algorand chain constant in all the appropriate places
2) Deploy pyth/hernandc algorand smart contracts into devnet
3) Fund all the correct contracts for devnet testing
Change-Id: I6e4402b5b21223b32ea89653f8c7606f5c7f2843
* pr/jsiegel/algorand-v1: ALGORAND is not a EVM chain @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix lint @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: put the requirements into the image @ gusc1a-ossdev-jsl1
* jsiegel/algorand: make the watcher hang forever @ gusc1a-ossdev-jsl1
* jsiegel/algorand: comment these out @ gusc1a-ossdev-jsl1
* jsiegel/algorand: put this back in @ gusc1a-ossdev-jsl1
* jsiegel/algorand: fix guardian example @ gusc1a-ossdev-jsl1
* Generate teal source code
commit-id:a537a109
* jsiegel/algorand: it builds @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: add Dockerfile.teal @ gusc1a-ossdev-jsl1
* jsiegel/algorand: improve the dependencies @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: Fix up build @ gusc1a-ossdev-jsl1
* dead file
* pr/jsiegel/algorand-v1: remove more stuff @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix build @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: freeze the requirements @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: Fix teal to use pipenv @ gusc1a-ossdev-jsl1
* pr/jsiegel/algorand-v1: fix miss-merge @ gusc1a-ossdev-jsl1
Co-authored-by: Leo <leo@certus.one>
As far as I can tell, both primary and node are happy. We can't use
https://github.com/algorand/sandbox since it makes too many
assumptions about its environment (docker-compose, interactive
development vs. reproducible CI usage).
Instead, use the official mainnet Docker images and ship our own config.
Caveat: "goal network create" is not reproducible and each Docker
build will generate a new set of root keys. We can presumably avoid
this by hardcoding the output of "goal network create"
(using --noimportkeys to avoid having to vendor a SQLite DB.. we'd
just re-import them to kmd at runtime, which is what goal is doing
internally: f51d2d7d5a/netdeploy/networkTemplate.go (L131))
Change-Id: I8c99c6150c9c244c9f12b68a58184c2d5697cee8