Commit Graph

814 Commits

Author SHA1 Message Date
Leo e9491d25f8 node/pkg/publicrpc: add GetCurrentGuardianSet RPC call
This is required for network explorers to know about missing guardians
(the GetLastHeartbeats call won't contain those nodes at all).

Change-Id: I28d8621023d79e6fa94c40f36a239c34aa12f1b0
2021-08-10 17:35:33 +02:00
jschuldt 576ff0cabf Explorer web app redesign.
Change-Id: Ida60941497f2eb0760e3623ac13ef123eaefabd1
2021-08-10 15:01:18 +00:00
Leo 67793cd144 node/pkg/p2p: add per-chain error counters
Change-Id: I47700ccb2dc93aefefa8ab6b6f0659f30912e142
2021-08-10 13:24:43 +00:00
justinschuldt 6126cfaf40 SignedObservation validation log message
Change-Id: I372f2ee703b5cc82a6a7e1f4df031357304b174b
2021-08-09 17:38:19 -05:00
Hendrik Hofstadt fae219e427 Make message a signer in CPI, improve attest ix signature
Change-Id: I5136a62d5b0b7617b4dc3e3e2a17614a68908f3f
2021-08-09 17:11:20 +00:00
Hendrik Hofstadt eb457f9e1e Fix eth chain registration script
Change-Id: Ibda50760847c5f6c31814f2e6dfa22cdf38a6f5e
2021-08-09 17:11:11 +00:00
Reisen eafa7e0500 Return to trace! on Dispatch log to undo stack issue
Change-Id: Ica665e89d27585eb6ecfa7df5339413c7703b3a9
2021-08-09 16:52:56 +00:00
Reisen f8a0184a1d Derive SplTokenMeta addresses
Change-Id: I4a988b0778c741c1405d096ea0d7aa67a2a31190
2021-08-09 16:43:07 +00:00
Leo 8718e31fb4 node/pkg/p2p: remove support for plain heartbeats
Change-Id: I621467615c2a46ab08ecae6227021b1e4efc1196
2021-08-09 13:16:55 +00:00
Leo 327f71d3f7 dashboards: update Grafana template
Change-Id: I742f8e673a5c6dea85fa3e258d789fafe5c8f6a7
2021-08-09 13:16:55 +00:00
Leo 73b0fce440 node/pkg/p2p: add metric for guardian network heights
Change-Id: Ie09d203d316a448dba5d4ac9269113467e2da78e
2021-08-09 13:16:55 +00:00
Leo 61a90136ca proto: add boot_timestamp to Heartbeat
Allows for precise uptime calculation.

Change-Id: I57d022ec10a56df57a4a1f79ae892eb8899f7154
2021-08-09 13:16:55 +00:00
Leo c7662d611e node: store heartbeats for multiple nodes per guardian
It's safe to break the proto API at this point.

Change-Id: I235100c5fef3abc9259d28f68d9bb7bf2be0ae5e
2021-08-09 13:16:55 +00:00
Leo e46d70bbe2 node/pkg/readiness: be even more explicit about readyz
RTFM!

Change-Id: I6f4eefb8f6d22fcd620b24658b3c2cfd0b48c949
2021-08-09 13:16:55 +00:00
Leo 61dd1c1052 node/cmd: unary list-nodes call with details
Change-Id: I9953b45d92461887b075b3456bdd9e161eefd263
2021-08-09 13:16:55 +00:00
Leo 336f373bb5 node/pkg/p2p: store own heartbeat in GuardianSetState
Change-Id: I6b9ab2ce267161d20c17d5d528fd7741c2eb48b4
2021-08-09 13:16:55 +00:00
Leo 3dcf1f1998 node/pkg/common: add GetAll accessor for GuardianSetState
Change-Id: I7ce71d356f9fc83cc751e98835cbae070deb8640
2021-08-09 13:16:55 +00:00
Leo aa608b9396 node/cmd: rename list-nodes to list-nodes-stream
Change-Id: I07df1c0bb7634f6a9f65db150d353e30a681d2bc
2021-08-09 13:16:55 +00:00
Hendrik Hofstadt 24e5406e84 Always log sequence
Change-Id: I0fe6e2f0f564f719b6207067b7824e395e91a65c
2021-08-09 12:51:23 +00:00
Reisen 2f8a73fdda Instruction symbol and error printing in prod builds
Change-Id: I3315c49272473ef3216f26b9dd21f5cfcce6e8ae
2021-08-09 12:33:59 +00:00
Hendrik Hofstadt add04e8755 Create different accounts for message posting and VAA posting
Change-Id: I88a3f74301aeecc16bb51ba693ea9523dc16b612
2021-08-09 13:51:25 +02:00
Evan Gray 017af5534b bridge: fix default statusAddr
Change-Id: Ief8d3e8a5dd140c239485b5e229ef7448451b8c7
2021-08-07 19:31:40 +00:00
Hendrik Hofstadt 597aae7cd7 Automatically register eth and solana token bridges
Change-Id: I35efef8d53f999f85ca2e8c4f58cc6cbf8193b2d
2021-08-06 15:21:27 +00:00
Hendrik Hofstadt bedc96d887 Add token bridge client for eth and solana
Change-Id: I0f9af0ffc606aed58579f167fadf80d1964360c8
2021-08-06 15:21:27 +00:00
Leo 8cee72ba9c node: add disableHeartbeatVerify flag
During network boot, the guardian set is empty and we temporarily
need this flag to figure out everyone's status.

Change-Id: I8ba23848310837080ae845d55ece5d3818181b98
2021-08-06 15:14:17 +00:00
Chanwoo Lee 95c752247b fix --statusAddr not working
Closes https://github.com/certusone/wormhole/pull/298

Change-Id: Id89fa57e9d05739980696de79cf8887e407a6567
2021-08-06 15:14:07 +00:00
Hendrik Hofstadt 3fb493cb23 Remove hardcoded instances of the bridge pubkey in the program
Change-Id: I42bc36fa9db650b9cab6c6ac4c8e7c969487a40f
2021-08-06 12:25:01 +00:00
Hendrik Hofstadt 86cd27c919 Allow Solana VAAs to be posted even if the message account does not exist
This is needed for hand-crafted governance VAAs that originate from Solana

Change-Id: I50f75de9a83dd9640d960a7808c0a6605afc539d
2021-08-06 10:20:19 +00:00
Reisen 05aece1f7c Add Metadata to token bridge attestations
Change-Id: Ic1a10978c25fbd916a16bd08eab0b6937c67cd59
2021-08-06 08:24:37 +00:00
jschuldt 9e16baa040 Devnet arguments for BigTable connection.
Change-Id: Idc893dc87739d1b309ffefcc67d98641f4bccd9a
2021-08-05 12:53:56 +00:00
jschuldt ce22a18101 Event database init script
Add new folder, 'event_database', containing a
Go script for initializing a BigTable table
and querying it for events.

Change-Id: I8ffda2e3ef43bf2faa9fc6eaf53efa019a3fecff
2021-08-05 12:53:56 +00:00
Stan Drozd cb719971fe solana/Dockerfile: Make sure we add everything from solana/
Change-Id: I864d769668865b010f630b2ebf8addcb7dcae545
2021-08-04 17:05:10 +02:00
Leo 82731c22c0 node: add GetLastHeartbeats RPC call
This aggregates verified guardian heartbeats server-side so they
can be fetched via unary calls.

Change-Id: I8458b139bb5d75f87ed700b50684a5ff8ca594fa
2021-08-04 14:26:26 +00:00
Stan Drozd 952a9d9db9 solana: Use a central location for well-known keypairs
Change-Id: Ibed0044bee47063ec0caa4b0c12e9e7037ed7e3b
2021-08-04 10:52:27 +00:00
Leo 360dccec27 design: initial state sync proposal
Change-Id: I57f65cefb95e72fbe9dc6738aeba3d4945202e47
2021-08-03 16:21:17 +00:00
Hendrik Hofstadt 8f1e980b4c Add more wasm helpers to the token bridge
Change-Id: I484361ef4b0eb2cd52913e695cf83ddccb5bfe7e
2021-08-03 15:10:01 +00:00
Hendrik Hofstadt 24f7780883 Always log sequence
Change-Id: I7847b8993f1453cc0e9943d4004a3d6bf7d3f5d7
2021-08-03 15:10:01 +00:00
Hendrik Hofstadt 361adf9920 Add token bridge CLI
This also automatically initializes the token bridge in the devnet

Change-Id: I473a97da1ff55e7c9a104983087951268eb7a27d
2021-08-03 15:10:01 +00:00
Stan Drozd 5fc162de97 scripts.nix: VM defaults, tilt port script arg, unique cluster name
Change-Id: I26d0a362c28a3374007c33a76c16006a98b78cd7
2021-08-03 10:34:53 +00:00
Leo 1da08b5bee Remove "buf mod update"
Do not upgrade locked dependencies during build.

This is only necessary to initialize the buf.lock file, once the
file exists, a regular "buf build" appears to pull them in.

Change-Id: I86d7734f8d6897bc30a6c9edd220eb51628be50c
2021-08-02 17:17:28 +00:00
Leo fa94977a34 bridge_ui: ignore proto
Change-Id: Ic03e5e1ae4c9f12e6a84d8afc330c3c5274dccd4
2021-08-02 17:17:28 +00:00
Hendrik Hofstadt b37853f7d9 Use safe math in terra
This uses safe math even in places where it's technically not necessary, but we want to be consistent here.

Change-Id: I5f9c8e2c0a798a38e4459f673541024bc0f07ef4
2021-08-02 15:55:40 +00:00
Hendrik Hofstadt 7f67ba1194 Replay protection for terra governance VAAs
Change-Id: Ib197e1d842093c578c2a6858c3b0a3ef3d18665d
2021-08-02 15:55:40 +00:00
Hendrik Hofstadt 895e40578c Check emitter for wAsset creation on terra
Addresses audit comment

Change-Id: Icf6b1e52e58f5cab6e39db1ed663dc6f6a2c2476
2021-08-02 15:55:40 +00:00
Leo 904cb25e91 Remove dev-install.sh
Deprecated, use Stan's shell.nix for remote development.

Change-Id: I6eb9f3951673adf116b37723c6ff6c434a1ee683
2021-08-02 15:43:00 +02:00
Hendrik Hofstadt f6e96bdb05 Fix proto client generation
Change-Id: I5f7430a61d64237929d608c92bf3e703863b6724
2021-08-02 12:41:35 +00:00
Leo b77d408235 node/pkg/ethereum: readiness status for bsc
Bug: certusone/wormhole#292
Change-Id: Ibb176dc70beeb2c00c7faf7d85395e93d53e9e4c
2021-08-02 14:30:29 +02:00
Hendrik Hofstadt b28c76618a Build ts grpc client for bridge ui
Change-Id: I611783e5f55ac8c970f5fb6df651472700a30df4
2021-08-02 14:09:14 +02:00
Leo 855be15ab8 node: refuse to run as root
While it works, it's not good operational practice, particularly when
running guardiand alongside other services like a Solana node.

Even inside a container, it's best to run as non-root.

Change-Id: I331533ef37eaab6e73f6759d7eb779bbda849384
2021-08-02 13:26:57 +02:00
Leo 3af233e3eb node: add GuardianSetState and verify heartbeat signature
Bug: certusone/wormhole#267
Change-Id: Ica8015fbbd52506d800670d933051f410bb1caa7
2021-07-31 19:02:09 +02:00