Commit Graph

931 Commits

Author SHA1 Message Date
Leo 4f22a44969 Bump Go to 1.17
Change-Id: Ideb635db1a553c5de4a0b700a080f935249990fb
2021-08-31 08:58:17 +00:00
Leo 4ac19518bd node: remove remaining "bridge" mentions
Ensure there's no core vs. token bridge ambiguity.

Breaking changes to the CLI:

* "guardiand bridge" CLI is now "guardiand node"
* --solanaBridgeAddress is now --solanaContract
* --bridgeKey is now --guardianKey

The Heartbeat proto message had one of its fields renamed from
BridgeAddress to ContractAddress, but this won't break the wire
format and the only consumer appears to be the CLI.

Change includes a "go mod tidy" - it insisted.

Change-Id: Id8b312827737f07f2d5f3944ebce469d946e7f51
2021-08-31 08:58:17 +00:00
chase-45 0b9a2e05ad bridge_ui: support terra source
Change-Id: Ia137e1c161851b946f86d08355fc197f43ae4fbf
2021-08-30 19:58:06 -04:00
Evan Gray 69349ab5c7 bridge_ui: terra address helper
Change-Id: I01d5a474d1f26fd3c500e6f9d1bcede65c013c1e
2021-08-30 17:50:04 -04:00
Reisen 4d7f11fc6c bridge_ui: fill in getOriginalAsset
Change-Id: I9e94b9253f0c4da6d4580283e6902461c96f55a3
2021-08-30 17:50:04 -04:00
Reisen 666a4d12d5 bridge_ui: fetch destination asset balance
Change-Id: Ib7581e8d4c6cae57ba50d2280badb79619dfe4ff
2021-08-30 17:50:04 -04:00
Reisen 0ef1bf4374 bridge_ui: transfer components
Change-Id: I3a8d03687d2ebff5d7654eb52bbc5678c7e96bb8
2021-08-30 17:49:53 -04:00
chase-45 1fa5baedca Solana & eth token pickers v1
Change-Id: If4f6feb67d46bc0c7db26b16a8b7530286805d2f
2021-08-30 17:12:37 -04:00
Evan Gray 74701adab2 bridge_ui: tx-based recovery for eth and solana
Change-Id: I20a0df101caaa956d3bd0330ffbb1898461e4f72
2021-08-30 13:14:08 +00:00
Evan Gray 98e05e39cb bridge_ui: vaa-based recovery
Change-Id: I8604258b7ba5642eac60eb46393a689e718bd757
2021-08-30 13:14:08 +00:00
Leo 82280559bd Test "make bridge" in CI
Change-Id: I5b248a530cc9c914a423e7f427b36c6e9cc15da6
2021-08-30 13:04:44 +00:00
Reisen a69d76494c devnet: add terra chain registrations
Change-Id: Icc45674147b42d462e6e4b89c8cd43f9d1ddb49e
2021-08-30 11:11:38 +00:00
Reisen 37baca1e32 terra/token_bridge: correct transfer payload
Change-Id: I724e4182e29a89a966896f89df4387d7aa8caac3
2021-08-30 11:11:17 +00:00
Hendrik Hofstadt a68061e545 Don't persist token name prefix on terra
Change-Id: I602e09f0d3178280d8613e67113e3a045b3e5cbe
2021-08-30 10:44:19 +00:00
Hendrik Hofstadt 2b8caa3ad5 Add NFT design doc
Change-Id: I83162d5632b0fab6c49333ca06fc59077fbb18e5
2021-08-30 10:44:14 +00:00
Alwin Peng e08116635e deduct taxes from coins sent to wormhole contract from token bridge, in case fee denom switches from uluna
Change-Id: I141b53b51c883162b49d6caa74225ce1c030995f
2021-08-30 08:43:37 +00:00
Reisen 7945662d8a clients/token_bridge: terra flags for testnet
Change-Id: I71bcc671efe3b9f95b04ad20a731f514260fb67d
2021-08-26 14:40:11 +00:00
Reisen 731bc11dc0 bridge_ui: fetch terra target from LCD
Change-Id: Ia21821526981c887b3cf5e30fe3421736c396235
2021-08-26 14:40:11 +00:00
Reisen 4921ed6ef4 terra/devnet: update to 0.4.9 for wasm queries
Change-Id: I8760edfe770ebb4d57f875a52dd58b62b6dbe6c5
2021-08-26 14:40:11 +00:00
Reisen bb7a67d4c7 token_bridge/client: add emitter derivation helper
Change-Id: I403e421ebf46b76561c59c6cdd2aac0442a3c8d6
2021-08-26 14:40:10 +00:00
Hendrik Hofstadt 6e3e43d35b Deploy plain ERC20 as test token
Previously we were using a Wormhole Wrapped asset which could cause confusions

Change-Id: Id3d52c30dad839ab97caed6ea892555f7a9f12a3
2021-08-26 14:19:19 +00:00
Hendrik Hofstadt 4469df136e Correctly pad Solana asset meta
Change-Id: Id2630bbd546695be7901927331e220406647b6da
2021-08-26 14:19:19 +00:00
Hendrik Hofstadt 56d8aa5e39 Create token meta for Solana devnet tokens
Change-Id: Ic7e2bd4a808640e10b646ee85abf963f9c6c586d
2021-08-26 14:19:19 +00:00
Hendrik Hofstadt 50afa0fe9e Prefix wormhole token names
Change-Id: Ieea61ea2833f66c29a2fa0f52ae1a914a3956146
2021-08-26 14:19:19 +00:00
Evan Gray f97ff5e079 bridge_ui: fix solana native target balance
Change-Id: I187c08cb2108f83090c43f43e1ebf43487d9a50c
2021-08-26 13:44:08 +00:00
Hendrik Hofstadt 568210edd4 Fix node path in eth client
Change-Id: I4e5bcd9c2ee3b51764c77ca81857109f9104378e
2021-08-26 13:16:59 +00:00
Leo 4f0759b8f2 Tiltfile: replace shell scripts by direct commands
This removes all locally ran shell scripts, which should hopefully
enable the Tiltfile to run without changes on Windows.

We lose the invariant of clearing the output directories, which
seems like a reasonable sacrifice for banishing bash.

Change-Id: I756928a25cada1b613ed9fda145809a414a46466
2021-08-26 12:59:20 +02:00
Leo 68be226c9d Containerize protobuf generation and remove node build dep
The Go dependency is still required to build the pack binary.

Use "tilt docker" to use Minikube's Docker instance, if available,
removing the local Docker dependency for Minikube users.

The Makefile continues to not require Docker and runs buf locally.

Remove broken Powershell scripts (can't test on Windows). These scripts
should now be substantially easier to write.

Change-Id: Ie80bf68e0e468a747861bea36fa5b353d9de110d
2021-08-26 12:41:22 +02:00
Leo e98463cfe3 node: rename bridge/ to node/
Calling guardiand a bridge dates back to v1 and no longer makes sense.

Change-Id: I27d24a5d7a64c3e37d6a5ce9c402c6248ad9c59e
2021-08-26 11:36:36 +02:00
Hendrik Hofstadt a8a8cbe183 👿
if you like it then you should have put a box 'round it

Change-Id: I504dd476f53bb5d0dd101a5278f485e83b32bd08
2021-08-25 19:49:57 +00:00
Stan Drozd 5f52dc6d76 solitaire: Implement Keyed for Mut<T: Keyed>
Change-Id: I6680315db9ac2fe913a85b01b471572047cbe658
2021-08-25 14:51:46 +00:00
Leo 63b77714ec proto: add strict linting and fix up existing protos
Passing the strict lint checks requires a number of backwards-
incompatible changes:

- Rename the NodePrivileged service to NodePrivilegedService.
  This is only used in CLI tooling, which are upgraded at the same
  time as the server binary.

- The Publicrpc service was renamed to PublicRPCService.

- The EmitterChain type is renamed to ChainID.

- The default value for the ChainID type is renamed to
  CHAIN_ID_UNSPECIFIED. This value wasn't referenced anywhere.

- The response and request types for GetLastHeartbeats were updated
  to match the rpc method name.

Change-Id: I3954130d3b25ab1f859390407bba3d3c02ffe03c
2021-08-25 14:26:33 +00:00
justinschuldt cf36c9bfe0 explorer: lookup BigTable data
- Explorer page fetch data from hosted Cloud Functions.

- Network page use GetLastHeartbeats rather than gRPC stream.

Change-Id: I57dce2ee0b84c4b31fcf7308855668a139ffe20e
2021-08-25 14:01:31 +00:00
justinschuldt 986b4b58f1 Add bigtable to devnet
- Add development BigTable instance

- Devnet Guardians save to local bigtable automatically

- Cloud Functions run in devnet containers

Change-Id: I9fa32a06b24218cf5c9c01cdff6f37c67e8d1e7c
2021-08-25 14:01:31 +00:00
Leo fea2226e83 tools: add pack binary
Change-Id: Id158850116bca1012f6ddb89a640b9f7ac74eee4
2021-08-25 14:01:31 +00:00
Evan Gray c33f3c0cb9 bridge_ui: set target address in state
Change-Id: Ie2f87582ffdc8da53ccc0f34721c3985d7807933
2021-08-25 13:48:05 +00:00
Stan Drozd 1f214029f5 nix/scripts.nix: Add explorer/guardian port forwards to whremote
Change-Id: Id69e9df77306f110cbeb0c53145bb3656f59dab8
2021-08-25 13:44:55 +02:00
Leo d622b0b22b proto: add module name
We now have auto-generated docs at
https://buf.build/certusone/wormhole/docs/main/publicrpc.v1

Change-Id: Ic29f8fc67013a605ec33732f048a7b9361f5e60d
2021-08-24 17:08:36 +02:00
Leo aeb673a164 Add presubmit CI test that runs "tilt ci"
- Use "npm ci" instead of "npm install" in a couple of places.

- Migrate generate-wasm.sh to a Dockerfile so it can be cached.

- Disable namespace creation and explorer build in CI.

Change-Id: I2e6ee806438863ca81ada701e14684f9f4cc0a76
2021-08-24 17:08:36 +02:00
Evan Gray eace2fcfea bridge_ui: worm.to icons
Change-Id: I819e69117229d33637663b193ce2a26f3996b93b
2021-08-24 09:36:43 -04:00
justinschuldt cf980cf290 devnet Guardian fix
Change-Id: I8fbcc60295e42e9bcc947d9e047cde760515785c
2021-08-24 13:10:46 +00:00
Reisen d884f7be17 solitaire: force deserialization into a new stack frame
Change-Id: I5ffe4ed6b831f4ddbad4e36fad31487fcd1765cd
2021-08-24 07:08:48 +00:00
justinschuldt d3acd39c71 Add grpc-web dependency to bridge
Change-Id: Ib659e2207e9235c34ecfa5b9d4fcda1ead959e4f
2021-08-23 15:15:10 -05:00
justinschuldt 44fe7bd726 Cloud function for BigTable queries
Change-Id: I8a2c0e349bdebeeeaf8b79f02285615b3a147884
2021-08-23 19:35:04 +00:00
Hendrik Hofstadt 37b654e7f9 Set updated addresses in web config
Change-Id: I01b5e232fc603e2a42efeff34ae7a2ee619f00df
2021-08-23 18:03:48 +00:00
Hendrik Hofstadt fdceea9515 Fix wasm generation scripts
Change-Id: I23aa186d7cb0b805b6a6cc30063e8be3147fd7d8
2021-08-23 18:03:39 +00:00
Hendrik Hofstadt d95e38da47 Don't verify core bridge config in token bridge
This is checked when we do CPI calls and did not work since derive is using ctx.this as context address

Change-Id: Ie8fefedb40c3c5eb4966bb0b85f207a40e0fe3be
2021-08-23 18:02:12 +00:00
justinschuldt 44cb47c2d8 Write attestation events to BigTable
Change-Id: I90fd86ff83a2e963ca306b7189528b415f5511d2
2021-08-23 09:54:28 -05:00
Hendrik Hofstadt 72477c46a4 Allow the emitter to be mutable
This is the case when the emitter is the fee payer.

Change-Id: Ib21658c6cbbbb246a7434057c0f03f24bec8c013
2021-08-23 13:54:07 +00:00
Reisen 254f1c8674 Use bridge config to decide fee payer.
Change-Id: I5eb7601737eb5cbc687dee07567a6fab4e5ca4c5
2021-08-23 13:54:03 +00:00