Leopold Schabel
b0a9e98648
Asynchronously fetch Terra block height ( #177 )
2021-02-05 15:16:31 +01:00
Yuriy Savchenko
8bf501879b
Added Terra node height monitoring ( #176 )
...
* Added Terra node height monitoring
2021-02-04 19:48:54 +01:00
Leo
966d0f0bc6
bridge/pkg/terra: add stub metrics
2021-02-04 14:20:49 +01:00
Leo
04e3ad772a
bridge: add "debug decode-vaa"
2021-02-04 11:48:31 +01:00
Yuriy Savchenko
f36ecc34f7
Terra support enabled in production mode ( #173 )
...
* Terra support enabled in production mode
2021-02-04 11:26:01 +01:00
Leo
8735b587cb
bridge/pkg/ethereum: fix guardian set update processing
...
We reused an expired context. No direct impact because the routine would crash
and re-fetch the guardian set.
2021-02-03 00:09:46 +01:00
Leo
02c750bc7e
bridge: fix terra devnet retry
2021-02-02 12:35:17 +01:00
Yuriy Savchenko
d9bb5f6802
Added missing e2e tests between Terra and Ethereum/Solana ( #168 )
...
* Added missing e2e tests between Terra and Ethereum/Solana
* Review comments fixed
* Uncommented Solana<->ETH code, missing Ethereum utils file added
2021-02-01 20:38:13 +01:00
Leo
5256d2025a
bridge: refuse to use deterministic keys in production
2021-01-29 12:40:55 +01:00
Leo
6d555789d6
Add version stamp to binary and include in heartbeat
2021-01-28 21:46:09 +01:00
Hendrik Hofstadt
2b30a30601
upgrade solana sdk version ( #166 )
...
* upgrade solana sdk version
Commitment levels were deprecated and the fastest confirmation level is `Processed`.
Also the upgradeable loader now requires the program to be writeable.
* Add deprecation comment
* update agent commitment level
2021-01-28 17:44:54 +01:00
Leo
ff298ffac6
bridge: fix one more Terra typo
2021-01-27 14:52:32 +01:00
Leo
b23f43ed1e
bridge: add metrics for ethereum, p2p and solana
2021-01-27 14:46:01 +01:00
Leo
bc356a5e51
bridge: count misses for settled VAAs
2021-01-27 01:58:18 +01:00
Leo
c5b59ac6a0
bridge: fix terraChainID typo
...
I share the blame for missing this during review :P
2021-01-27 01:58:18 +01:00
Leo
7201b64a77
bridge/e2e: fix panic in testSolanaToTerraLockup
2021-01-27 01:58:18 +01:00
Leo
a33505e0f9
bridge/e2e: group tests by chain
2021-01-27 01:58:18 +01:00
Leo
3282e9dbb9
bridge/e2e: increase timeouts for use with 19 validators
2021-01-27 01:58:18 +01:00
Leo
3449ca4d6e
bridge: retry Terra devnet submission
...
This fixes an e2e test race condition.
2021-01-25 20:18:00 +01:00
Leo
c48c198188
bridge: always sign lockups and store gs in aggregation state
...
This fixes #160 by making sure that nodes will sign *any*
lockup they see using their guardian key, and storing
the gs in the aggregation state when we see a lockup.
2021-01-25 20:18:00 +01:00
Leo
14441680d0
bridge: add initial set of basic Prometheus metrics
2021-01-25 20:17:58 +01:00
Leo
5679f67c85
bridge/e2e: fix nil panic in testEthereumLockup
2021-01-21 20:17:23 +01:00
Leo
fd4b61b736
bridge/e2e: increase Terra timeout to make it less flaky
2021-01-21 14:39:06 +01:00
Leo
76cb95c51b
bridge/pkg/processor: ignore observations while waiting for guardian set fetch
...
Fixes crash https://gist.github.com/leoluk/17d77fef7c0fd44dd6c3fe3e65bb23a7 .
2021-01-21 14:25:27 +01:00
Leo
b7c6eb7f3c
bridge: upgrade libp2p to v0.13.0
2021-01-21 12:51:19 +01:00
Leo
f563de8e31
bridge: upgrade all dependencies to latest patch releases
2021-01-21 12:51:19 +01:00
Hendrik Hofstadt
fd6c54de83
bridge/pkg/solana: use polling GetProgramAccounts watcher ( #156 )
...
This mitigates https://github.com/solana-labs/solana/issues/9909 by
polling GetProgramAccounts with a server-side filter. It also removes
the agent dependency for the lockup observation logic - the agent is now
used for transaction construction only.
2021-01-21 11:31:32 +01:00
Leo
108f050c0e
Clarify public keys vs public key's hashes in comments and docs
2021-01-21 00:59:50 +01:00
Leo
cc1e4d0bdc
bridge: remove mentions of lockup observations
...
We now support different kinds of observed events, not just lockups.
Change the log messages and comments accordingly.
2021-01-21 00:35:52 +01:00
Leo
562eaf5ce7
Log aggregation state of incomplete VAAs
2021-01-21 00:28:15 +01:00
Leo
c0eef2fe9b
adminGuardianSetUpdateToVAA: check for duplicate guardian keys
...
Sanity check.
2021-01-21 00:25:38 +01:00
Leo
ea21b1782f
Explicitly document required command line arguments
...
Cobra does not support automatic documentation of positional arguments
(see https://github.com/spf13/cobra/issues/378 ).
2021-01-21 00:01:34 +01:00
Leo
d0d00f4972
Fix crash when testSolanaLockup is executed for the first time
...
We forgot to initialize the big.Int.
2021-01-19 17:03:48 +01:00
Yuriy Savchenko
eeb560cb5c
Terra integration added to e2e tests
2021-01-19 16:50:26 +01:00
Yuriy Savchenko
701154457c
New tests and fixes in Terra Wormhole contracts
...
- added new descriptive errors in terra wormhole contract
- 0-expiration guardian sets error fixed
- added script for test VAAs generation
- added full test coverage for the VAA processing in the contract
- fixed cargo clippy/fmt warnings
2021-01-19 16:50:26 +01:00
Leo
9f2f609bc1
Bump Go and pin all Docker images to digests
2021-01-19 16:15:54 +01:00
Hendrik Hofstadt
efa03ef73c
Implement upgradeability ( #151 )
...
* Implement contract upgrade VAA action
* naming and (╯°□°)╯︵ ┻━┻
* Carefully unflip table and replace broken cutlery ┬─┬ノ( ◕◡◕ ノ)
* fix and automate upgradeability
* document contract upgrade call
* Update comments
* Exhaustiveness check in VAA payload switch
* Fix typo
Co-authored-by: Leo <leo@certus.one>
2021-01-19 13:01:45 +01:00
Leo
ad5950ffe7
Make it official that we support exactly 19 validators
...
Fixes #86
2021-01-11 15:07:28 +01:00
Leo
770393b94e
bridge: rename misleading "pending" counter
...
It includes completed transactions that haven't been timed out yet.
2020-12-08 11:12:11 +01:00
Leo
b077104086
bridge: log own peer ID at startup
2020-12-06 20:26:12 +01:00
Leo
594592e2f6
devnet: use wormhole namespace by default
2020-12-05 16:32:37 +01:00
Yuriy Savchenko
cc412605c7
Terra key moved out from env variable, VAA submission on Terra made async ( #129 )
...
* Terra fee payer key moved from environment variable into the separate file
* Removed closed issues from the comments, VAA submition made async
* Review comments fixed
2020-11-30 19:24:39 +01:00
Leo
106fecca00
bridge: always gate Terra features on the main feature flag
2020-11-30 17:13:48 +01:00
Hendrik Hofstadt
bec598b41a
Fix subsidization and fees ( #127 )
...
* Revert "solana: partially revert #82 subsidization changes"
This reverts commit 2967653e
* fix subsidization
* fix deleted grpc tag dependency
* revert devnet changes
* verify system instruction action
* ┬─┬ノ(ಠ_ಠノ)
2020-11-30 11:09:08 +01:00
Leo
120dfab49e
bridge: type alias for readiness components
2020-11-29 17:07:15 +01:00
Leo
c31777d1b3
e2e: add bidirectional end-to-end tests
2020-11-29 17:07:15 +01:00
Leo
30278397f7
bridge: add erc20 abi for use in tests
2020-11-29 17:07:15 +01:00
Leo
de8d1dee31
devnet: pin Dockerfile syntax to digest
...
This speeds up the build by ~1.5s by avoiding a remote lookup on
Docker Hub every time this is built (WTF).
2020-11-29 17:07:15 +01:00
Leo
561852d499
bridge: simple readiness check
2020-11-29 17:07:15 +01:00
Leo
36a025b088
Update to Go 1.15.5 to account for CVE-2020-28362
2020-11-27 19:20:07 +01:00